- Expert level knowledge of your chosen programming language and the associated tooling. Experience with other languages is highly desirable.
- A passion for technology and a willingness to move between languages and technology stacks.
- Hands-on experience with test driven development and other forms of automated testing.
- Strong understanding of the principles underlying agile development and an understanding of the various approaches that can be effective in realising these principles in different contexts
- Strong communication skills, including the ability to communicate effectively while working remotely with globally distributed teams.
- Strong interpersonal skills, including a desire to collaborate and share knowledge with other team members, including client team members. This also includes the ability to work collectively towards a common goal without insisting on a given course of action.
Nice To Have :
- Hands-on experience developing distributed systems including microservice architectures and RESTful services.
- Hands-on experience developing and running large scale production systems ideally in containerised/cloud environments using either AWS, GCP or Azure.