Design, development and testing of new and existing software applications
Collaborate on the definition and development of new and existing software features
Conduct technical analysis and investigation, including evaluation and selection of technical options
Ensuring adherence to best practices within the development team
Write clean, well-designed, secure, and testable code
Collaboration in the definition and further development of software development processes within the framework of the AGILE methodology
Troubleshooting, troubleshooting, and upgrading existing systems
Analysis and resolution of application problems
Creation of comprehensive automated unit and integration tests to ensure code quality
Demonstration and presentation of the work to product managers and other stakeholders
What you need to fulfill the role
Proven experience in software development with languages such as C #
Proven knowledge of API design principles
Proven experience in the development of container solutions (e.g. with Docker)
Good knowledge of developing and deploying software with Microsoft Azure DevOps
Good understanding of designing and implementing scalable, resilient, fault-tolerant distributed systems
Good experience and understanding in microservices based application design, development, deployment and monitoring strategies & tools.
Good leadership and motivation skills
Experience in mentoring and coaching software engineers
Knowledge of agile software development methods
Strong critical thinking, analytical skills and problem-solving skills
Strong communication and interpersonal skills
At least 5 years of experience in developing production-quality software
Desired: Knowledge of React.js
Bachelor's degree in Computer Science