The ideal candidate will be familiar with the full software design life cycle. They should have experience in designing, coding, testing and consistently managing applications They should be comfortable coding in a number of languages and have an ability to test code in order to maintain high-quality code.
Responsibilities
- Design, code, test and manage various applications
- Collaborate with engineering team and product team to establish best products
- Follow outlined standards of quality related to code and systems
- Develop automated tests and conduct performance tuning
Qualifications
- Solid understanding of C# fundamentals and .NET ecosystem (e.g., .NET Core / .NET 6+)
- Solid grasp of OOP principles, SOLID design principles, and common design patterns
- Experience with building real-world applications using ASP.NET Core (Web API, MVC)
- Ability to clearly explain project architecture, layers, and implementation decisions
- Strong problem-solving skills with scenario-based thinking
- Good knowledge of asynchronous programming (async/await), multithreading, and performance considerations
- Proficiency with LINQ, collections, and data handling
- Experience with dependency injection and middleware in ASP.NET Core
- Ability to write clean, maintainable code independently without relying on external tools
- Understanding of database integration (e.g., Entity Framework Core, SQL) and scalable system design
- Good communication skills and clarity in explaining technical concepts