Job responsibilities
- Use domain modeling techniques to allow us to build best in class business products.
- Structure software so that it is easy to understand, test and evolve.
- Build solutions that avoid single points of failure, using scalable architectural patterns.
- Develop secure code so that our customers and ourselves are protected from malicious actors.
- Promptly investigate and fix issues and ensure they do not resurface in the future.
- Make sure our releases happen with zero downtime for our end-users.
- See that our data is written and read in a way that's optimized for our needs.
- Keep an eye on performance, making sure we use the right approach to identify and solve problems.
- Ensure our systems are reliable and easy to operate.
- Keep us up to date by continuously updating our technologies and patterns.
- Support the products you've built through their entire lifecycle, including in production and during incident management
- Manage a growing team whilst remaining hands-on and close to the code
Required qualifications, capabilities & skills
- Formal training or certification on software engineering concepts and applied experience
- Recent hands-on professional experience as a
- Experience in coding in a recent version of theprogramming language
- Experience in designing and implementing effective tests (unit, component, integration, end-to-end, performance, etc.)
- Excellent written and verbal communication skills in English
- Experience in collaboration and negotiation with non-engineering teams to ensure timely delivery
- Experience with operating, supporting and the security of mission critical software applications
Preferred qualifications, capabilities & skills
- Experience in working in a highly regulated environment / industry