Select how often (in days) to receive an alert:
The Software Engineer / Senior Software Engineer (Java) shall support the implementation of the digitalisation strategy for Group Technology and Networks, aiming to loosen the IT architecture, increase organisational agility, and enable an API-driven digital ecosystem. His/her main responsibility is to design, develop, integrate, test, and maintain the entire end-to-end development stack for existing and new services such as Network as a Service (NaaS), Network Service Bus (NSB), and Service Orchestrator (SO).
Make an Impact by:
- Defining Continuous Integration (CI)/Continuous Deployment (CD) pipelines and tools for the entire development process, including developing and maintaining testing automation scripts needed for the pipeline.
- Possessing a high-level technical overview of software solutions, ensuring individual software design adopts defined frameworks and design patterns for microservice architecture, and uses CI/CD pipelines for software delivery where applicable.
- Developing in one or more programming languages (e.g., Java, Python, Node.js) using one or more development methodologies/delivery models (e.g., Agile/Scrum), while ensuring the solutions address security, availability, performance, and maintainability requirements.
- Designing, developing, and maintaining enterprise-grade, highly scalable, and high-performing software solutions that meet functional and technical requirements, including security.
- Designing and developing microservices and APIs using various technologies (e.g., Java).
- Automating testing for the software solution, including unit testing, backend integration testing, frontend UI testing, and end-to-end testing.
- Collaborating with QA teams and other internal teams to validate, document, and resolve defects/enhancements.
- Working with operations teams to facilitate root cause analysis of application issues.
- Following best practices on coding, testing, code reviews, version control, CI/CD, and documentation.
- Gathering functional requirements, developing technical specifications, project/test planning, and participating in project meetings.
- Reviewing designs and code output from development teams and QA results.
- Continuously evaluating industry trends to incorporate new technologies and methodologies into the solution stack as appropriate.
Skills for Success:
- Bachelor's Degree in IT/Computer Science/Computer Engineering or relevant discipline.
- At least 1 year of experience with technologies such as Java, Apache Camel, Spring Boot, etc.
- 1 to 3 years of relevant experience in software development using Agile or DevOps methodologies.
- Experience with container technologies such as Docker and Kubernetes.
- Experience in Linux and projects utilizing DevOps and software automation with unit and functional testing.
- Experience with databases such as MariaDB/PostgreSQL and MongoDB.
Your Career Growth Starts Here. Apply Now!