Job Description

We seek a skilled and experienced senior back-end developer with strong proficiency in C# and a solid understanding of object-oriented programming (OOP). The ideal candidate will bring a robust technical background in SQL and NoSQL databases, Domain-Driven Design (DDD), Microservices, and Clean Architecture. This role also involves mentoring junior developers, providing technical guidance on best practices, and collaborating effectively within an Agile environment.

Key Responsibilities:

  • Develop and maintain scalable backend systems, with a focus on clean, efficient, and reusable code.
  • Utilize C# and OOP principles to design and implement software solutions.
  • Work with both SQL (SQL Server, PostgreSQL) and NoSQL databases (MongoDB, Cassandra, DynamoDB).
  • Apply Domain-Driven Design (DDD), Microservices Architecture, Clean Architecture, and Event Sourcing principles.
  • Implement SOLID principles and leverage design patterns in software design.
  • Utilize messaging systems like Apache Kafka, RabbitMQ, and MassTransit for event-driven development.
  • Mentor and support junior developers, promoting knowledge sharing and skills development within the team.
  • Ensure code quality and best practices are maintained across the team.
  • Troubleshoot and solve complex problems effectively and efficiently.
  • Communicate clearly and collaborate effectively within an Agile development environment.

Requirements:

  • Bachelor’s degree in Computer Science, Software Engineering, or a related field (preferred).
  • 5 to 7 years of professional experience in backend development, with a strong emphasis on C#.
  • Proficiency in SOLID principles and familiarity with common design patterns.
  • Experience working with Apache Kafka, RabbitMQ, or MassTransit.
  • Strong problem-solving and analytical skills, with the ability to handle complex systems and workflows.
  • Excellent communication skills and an ability to mentor junior team members.

General Competencies:

  • Time Management: Ability to prioritize tasks and meet deadlines.
  • Organized: Detail-oriented with excellent organizational skills.
  • Proactive: Self-motivated, with a drive for results.
  • Team Player: Collaborative spirit with a willingness to learn and share knowledge.
  • Professionalism: Upholds high ethical standards and a positive work attitude.

برای مشاهده‌ی شغل‌هایی که ارتباط بیشتری با حرفه‌ی شما دارد،