The Senior Software Engineer - Java is responsible for designing, developing, and maintaining Java-based applications. They collaborate with a team of other developers to create high-quality and innovative software solutions.
What you will do?
- Collaborate with development team, product managers and cross-functional teams to ideate software solutions and deliver new features.
- Communicate with clients and service providers to align the technical requirements.
- Design and develop high-performance and scalable back-end systems.
- Develop and manage well-functioning databases and applications.
- Create security and data protection settings.
- Test software to ensure responsiveness and efficiency.
What you need to have to be successful in your application?
- Bachelor’s or master’s degree in computer science or a related field.
- 5+ years of experience as a software engineer.
- Strong understanding in areas of software engineering such as Algorithms, Data Structures, Object Oriented, Design patterns, Software Architecture, Database Design, UML etc.
- Experience with Java Spring Boot and Oracle databases.
- Experience working with web services generating and consuming SOAP and REST services.
- Experience applying APIs security techniques like JWT, Spring Security, OAuth2, etc.
- Good knowledge of data security, encryption/decryption algorithms like RSA, AES, etc. is a plus.
- Experience working with Oracle Weblogic, Apache Tomcat as application servers.
- Experience working with Oracle Fusion Middleware technologies (OSB, Oracle BPM, Oracle UCM) is a plus.
- Good knowledge of SOA architecture and microservices architecture.
- Experience with Git, BitBucket resource control.
- Working knowledge of Linux Systems.
- Understanding of software development methodologies (e.g., Agile, Scrum).