Senior Full-Stack Engineer
Summary
Senior Full-Stack Engineer focusing on backend development with C#, .NET, and AWS for the Flexischools platform. The role involves designing scalable APIs and distributed services using DDD principles, while also contributing to ReactJS frontends and mentoring junior engineers.
About the role
The Senior Full-Stack Engineer designs, develops, tests, implements and supports scalable software applications and systems across the Flexischools platform. This role has a strong backend engineering focus, working primarily with C#, .NET, ASP.NET Core, AWS and distributed services, while also contributing to customer-facing applications using ReactJS and TypeScript. The engineer designs maintainable services and APIs, applies strong software architecture and Domain-Driven Design principles, and contributes across the full software development lifecycle from requirements analysis and design through to production support. As a senior engineer, the role also influences technical direction within the squad, contributes to engineering standards, and supports the growth of other engineers through collaboration, mentoring and code reviews.
Key responsibilities
Deliver high-quality software aligned with product priorities, architectural direction and engineering standards
Research, analyse and evaluate system and program requirements to inform software design and effective technical solutions
Design, develop, modify, test, implement and maintain backend services, APIs, integrations and supporting web applications
Contribute to technical design and architecture, with a focus on maintainability, scalability, reliability and clear domain boundaries
Work closely with Product, Engineering and other stakeholders to translate business requirements into effective technical solutions
Apply appropriate automated testing, observability, security and quality practices throughout the development lifecycle
Own software through to production, including deployment, monitoring, troubleshooting and incident resolution
Write, update and maintain technical documentation, engineering standards and records of significant design decisions
Mentor engineers, provide constructive technical feedback and contribute to a strong engineering culture
Identify and mitigate risks affecting software performance, reliability and security
About you
Tertiary qualification in Software Engineering, Computer Science or a related field, or equivalent commercial experience (typically 5+ years)
Strong commercial experience with C# and modern .NET
Strong experience building APIs and backend applications using ASP.NET Core
Strong understanding of object-oriented design, SOLID principles, dependency injection and automated testing
Experience applying architectural patterns such as Onion Architecture, Clean Architecture or similar layered approaches
Practical experience with Domain-Driven Design concepts, including domain modelling, bounded contexts, aggregates, and separation of domain and infrastructure concerns
Strong experience designing and developing REST APIs and service integrations
Experience with Entity Framework Core and relational databases such as SQL Server or PostgreSQL
Strong understanding of distributed systems and microservice architectures
Experience building and operating applications in AWS