As a Senior .NET Developer who not only loves solving complex problems but is passionate about code quality, and building scalable and testable solutions.
You’ll be adequately self going, contribute to technical discussions, and aspire to deliver clean, robust code. You have a sharp eye for simplicity amidst complexity and pride yourself on thorough, thoughtful development, including writing tests for critical components. Whether working closely within your team or leading a project area independently, you’re confident, collaborative, and proactive.
Areas of ownership:
- Take part the design, development, and deployment of complex, high-throughput backend services and APIs, ensuring best-in-class performance and maintainability.
- Establish and articulate a clear, ambitious long-term vision and technical roadmap for the evolution of the BE systems.
- This includes planning for future growth, anticipating technological shifts, and driving the adoption of new technologies and patterns to maintain a competitive edge.
- Proactively identify and resolve technical debt before they impact the business.
- Mentor engineers, elevating the technical expertise and quality of engineering output across the organization.
- Influence engineering standards and best practices for testing, performance tuning, and security across different development teams.
Requirements
- Exceptional and proven proficiency in the .NET area, including extensive experience with C#, .NET Core/5+, and related frameworks (e.g., ASP. NET Core, Entity Framework Core).
- Demonstrable architecting skills with a strong background in designing and implementing large-scale, distributed systems (e.g., microservices, event-driven architectures, serverless).
- Expert knowledge of design patterns, domain-driven design (DDD), and SOLID principles.
- Extensive experience with at least one major cloud platform (AWS, Azure, or GCP) and related services (e.g., managed databases, message queues, containerization).
- Deep understanding of various database technologies (SQL and NoSQL) and data modeling best practices for scalable applications.
- System-Level Thinking: Ability to decompose complex problems into manageable components and evaluate trade-offs between different technical solutions (e.g., speed vs. stability, buy vs. build).
- Excellent verbal and written communication skills, with the ability to present complex technical ideas clearly to both technical and non-technical stakeholders, driving consensus on critical architectural decisions.