Overview
We are seeking a Contract Principal Software Architect to enhance an enterprise digital platform focusing on an existing consumer technology application. This role will involve collaborating with cross-functional teams to deliver pragmatic architectural solutions that improve scalability, resilience, and customer experience within a hybrid work environment. The successful candidate will address architectural challenges in a live production setting by guiding the evolution of legacy systems and supporting the engineering teams in implementing incremental enhancements.
Responsibilities
- Define and maintain architectural principles, standards, and target-state designs across the technology landscape.
- Provide architectural leadership for complex initiatives, system changes, and cross-platform integrations.
- Assess existing systems and identify opportunities to simplify, consolidate, and modernise platform capabilities.
- Support engineering teams in delivering scalable, maintainable, and well-structured solutions.
- Make and guide technical decisions around distributed systems, APIs, integrations, data, and cloud architecture.
- Identify architectural risks, technical debt, and platform constraints, and establish appropriate mitigation strategies.
- Promote consistent architectural standards, engineering quality, and technical decision-making.
- Support and mentor senior engineers and technical leads, helping embed architectural thinking within delivery teams.
Requirements
- Strong commercial experience as a Software Architect / Principal Architect within complex software environments.
- Proven experience designing distributed systems and modern software platforms.
- Strong understanding of software architecture patterns, APIs, integrations, and cloud-based systems.
- Experience operating within Microsoft Azure or another major cloud environment.
- Demonstrable experience defining service boundaries, ownership models, and integration patterns.
- Strong understanding of SQL and NoSQL data technologies and the architectural considerations involved in selecting appropriate data stores.
- Experience modernising or evolving existing platforms incrementally, and working with legacy systems and technical debt.
- Technical proficiency in .NET/C#, Python, Node, and modern DevOps practices including CI/CD.