Overview
In this role, the Software Engineer will join an agile development team to contribute to the development of components for a cross-domain security system. The engineer will be involved in all phases of the software development lifecycle, leveraging their technical skills to address business challenges. This position requires collaboration within the team, understanding requirements, and delivering high-quality software solutions through effective coding and testing practices.
Responsibilities
- Understand high-level requirements and collaborate to find solutions.
- Investigate technologies to gain a deep understanding of their applicability.
- Develop high-quality code.
- Problem-solve deeply technical issues.
- Build tests at all stages of development from unit tests to acceptance & performance tests.
- Build deployment code and pipelines, consulting with DevOps specialists.
- Analyse and resolve issues from 3rd line support.
- Collaborate in code development and review colleagues’ work.
Requirements
- Experience in developing software using core and related technologies.
- An agile development mindset with familiarity in agile practices.
- Proficient in test-driven development (TDD) and behavior-driven development (BDD).
- Experience with continuous delivery and DevOps practices.
- Familiarity with code estimation and planning techniques.
- Core development language expertise in Java; knowledge of Python, JavaScript, Golang, or Bash is a plus.
- Experience with technologies such as AWS, Docker, and various database management systems.
- Knowledge of tools including Jenkins, Git, and Kubernetes is highly desirable.