At SMS.ir, we are looking for an experienced Backend .NET Developer to join our engineering team and contribute to the development and improvement of our core platform services.
Responsibilities
- Design, develop, and maintain backend services with a focus on reliability, performance, and scalability
- Collaborate closely with the engineering team to improve existing systems and implement new features
- Participate in technical discussions and contribute to architectural and design decisions
- Write clean, maintainable, and well-structured code
- Take ownership of the services and components you work on throughout their lifecycle
Technical Requirements
- 3+ years of professional backend development experience with strong hands-on expertise in C# and modern .NET versions
- Solid experience working with SQL Server, including writing and optimizing queries
- Practical experience with ORM-based and non-ORM data access approaches, with an understanding of their trade-offs
- Good understanding of Clean / Layered Architecture and general software design principles
- Practical familiarity with Domain-Driven Design (DDD) concepts
- Experience working with asynchronous, message-based or event-driven systems
- Experience implementing background processing and scheduled tasks
- Hands-on experience using caching mechanisms to improve performance and reduce system load
- Understanding of logging, monitoring, and debugging in production environments
- Familiarity with search concepts and working with large datasets
- Proficiency with Git and collaborative development workflows
- Ability to write clean, readable, testable, and maintainable code
Soft Skills & Personal Qualities
- Proven experience working effectively in a team environment
- Strong problem-solving skills with the ability to analyze issues and propose solutions
- Sense of ownership and responsibility for delivered code and services
- Active participation in code reviews and openness to feedback
- Strong motivation for continuous learning and technical growth
- Good time management and task prioritization skills