Roles and Responsibilities:
- Lead, mentor, and manage a team of software developers.
- Conduct regular one-on-one meetings and performance reviews, and provide career development guidance.
- Foster a collaborative environment, promoting information sharing, and driving team performance to meet project milestones.
- Assist in the maintenance and support of new as well as existing solutions.
Requirements and Qualifications:
- Bachelor’s degree in Software Engineering, Computer Science, Information Technology, or a related field.
- A minimum of 10 years’ experience in software development.
- Proven experience leading software projects or engineering teams for a minimum of 3 years and supervision, with a strong ability to motivate and inspire team members.
- Experience with .NET framework, .NET Core, C#, Restful Architecture, DDD Architecture, Microservices Architecture, Event Driven Architecture, Unit Testing, EF, EF Core and any of the following: SQL Server, PostgreSQL, RabbitMQ, Elasticsearch.
- Good understanding of system/software development lifecycle (SDLC) techniques and various industry-standard agile practices (DevOps, Continuous Delivery, Continuous Integration, Scrum, Kanban).
- Microservices architecture transformation project experience.
- Preferably having worked in an e-commerce company or a company with high traffic.
- Working knowledge of one or more of the following containerization and cloud technologies is also highly desirable: Docker, Kubernetes, Azure.
- Excellent problem-solving skills, communication skills, and attention to detail.
- Ability to work collaboratively with front-end developers and other team members.
- Strong understanding of database design and development of APIs.
- Monitoring the quality of the output of team members through active mentoring and code reviews.
- Contribute to the internal coding standards and development practices.
- Ability to organize and plan work independently as well as in a team environment.