Senior Principal, Software Engineering
About MojoTech
MojoTech is an innovative technology consulting firm that integrates strategy, design, data, and software engineering to create results-driven, AI-enabled digital products and experiences.
We partner with our clients to discover, define, design, and build tomorrow’s innovations, empowering organizations to unlock future market potential, maximize returns on innovation, and drive transformational change.
Role Overview
We are looking for a Senior Principal Software Architect with deep expertise in Microsoft Azure, .NET, and AI-accelerated software development to lead client engagements across architecture, delivery, and growth.
This role combines hands-on technical leadership with client engagement and business development. You will work directly with client stakeholders to modernize applications, shape cloud solutions, guide teams through delivery, and grow accounts through trusted relationships and strong outcomes.
You will also help teams adopt AI-assisted and agentic development practices responsibly. This includes using AI to accelerate software design, implementation, code review, debugging, documentation, and delivery while ensuring that people remain accountable for architectural decisions, quality, security, and production readiness.
You will be expected to stay close to the work. This is a hands-on leadership role in which you will set technical direction, evaluate architecture and code, unblock teams, and step in when needed to move delivery forward.
Key Responsibilities
Azure and .NET Architecture Leadership
- Design and deliver scalable, maintainable, and secure applications using C#, .NET, ASP.NET Core, and Microsoft Azure
- Lead the architecture and development of distributed, cloud-native applications, APIs, integration services, and data-driven solutions
- Modernize legacy .NET and .NET Framework applications using incremental migration, re-platforming, refactoring, or cloud-native modernization approaches
- Design Azure solutions using services such as Azure App Service, Azure Functions, Azure Container Apps, Azure Kubernetes Service, API Management, Service Bus, Event Grid, Azure SQL, and Cosmos DB
- Design secure identity and access management solutions using Microsoft Entra ID, OAuth 2.0, OpenID Connect, managed identities, and role-based access control
- Apply Azure Well-Architected Framework principles to improve reliability, security, performance, operational excellence, and cost management
- Establish application integration patterns using REST APIs, messaging, event-driven architecture, and microservices where appropriate
- Guide teams in the practical use of automated testing, CI/CD, observability, infrastructure as code, and DevOps practices
- Use Azure DevOps, GitHub Actions, Bicep, Terraform, or similar tools to create repeatable build, deployment, and infrastructure processes
- Evaluate architectural trade-offs and make clear, pragmatic recommendations based on business needs, delivery constraints, and long-term maintainability
- Provide hands-on technical support through architecture reviews, code reviews, proof-of-concept development, and complex troubleshooting
AI-Accelerated Engineering Leadership
- Use AI-assisted development tools to accelerate software design, implementation, testing, code reviews, debugging, and technical problem-solving
- Design and lead agentic development workflows that support parallelized coding, autonomous task execution, and orchestration across complex software initiatives
- Apply prompt engineering techniques to software development, system design, code generation, testing, analysis, and technical documentation
- Use AI to create and maintain documentation, architecture diagrams, technical specifications, delivery plans, test assets, and other project artifacts
- Establish clear standards for reviewing, validating, testing, and securing AI-generated code and technical outputs
- Design workflows in which humans remain accountable for architectural decisions, implementation quality, security, compliance, and production outcomes
- Use rapid prototyping to validate ideas and technical approaches, followed by structured production hardening across architecture, code quality, security, testing, performance, observability, and maintainability
- Help teams determine where AI-assisted or agentic workflows provide meaningful value and where traditional engineering approaches are more appropriate
- Monitor the effectiveness of AI-enabled engineering practices and continuously improve the team’s tools, workflows, and quality controls
- Coach clients and delivery teams on the responsible adoption of AI-accelerated software engineering practices
Client Engagement
- Work directly with client stakeholders to understand business and technical challenges, define solutions, and align on measurable outcomes
- Lead discovery engagements, application and cloud assessments, modernization planning, and early-stage solution design
- Assess existing .NET applications and Azure environments to identify technical debt, security risks, operational gaps, and modernization opportunities
- Evaluate client software delivery practices and identify opportunities to introduce AI-assisted and agentic development workflows
- Facilitate technical workshops and architecture discussions with engineering teams, business leaders, and executive stakeholders
- Translate business requirements into clear, executable technical strategies, roadmaps, and delivery plans
- Communicate complex Azure, .NET, and AI-enabled engineering concepts to technical and nontechnical audiences
- Build strong client relationships that position MojoTech as a trusted technology and delivery partner
Sales and Growth
- Partner with account and sales leaders to shape and win Azure, .NET, application modernization, and AI-accelerated engineering engagements
- Contribute to proposals, estimates, staffing plans, technical approaches, and client presentations
- Support technical discovery and solutioning during the sales process
- Identify follow-on opportunities within existing client engagements
- Clearly articulate the business and technical value of proposed solutions
- Help develop reusable Azure, .NET, cloud modernization, and AI-enabled engineering offerings, reference architectures, accelerators, and delivery approaches
Program and Delivery Leadership
- Lead technical delivery across one or more engagements, ensuring work remains aligned with agreed goals, timelines, budgets, and quality expectations
- Establish lightweight governance, planning, architecture decision-making, and communication practices that keep teams moving
- Coordinate across engineering, product, design, data, cloud infrastructure, and security disciplines
- Structure work so teams can safely use parallelized and agentic development approaches while maintaining appropriate review and integration controls
- Identify architectural, technical, and delivery risks early and work with teams and client stakeholders to address them
- Ensure architecture decisions are translated into working software and consistently implemented across delivery teams
- Maintain a strong focus on production readiness, measurable outcomes, and sustainable client ownership
- Ensure rapid prototypes move through a defined production-hardening process before release
Team and Practice Leadership
- Mentor engineers and architects and help develop technical leadership across project teams
- Establish high standards for .NET development, Azure architecture, AI-assisted engineering, code quality, system design, security, testing, and production readiness
- Coach teams on AI-accelerated code review, debugging, implementation, prompt engineering, and agentic development workflows
- Contribute to hiring, interviewing, and building a strong senior engineering organization
- Help evolve MojoTech’s Azure, .NET, cloud modernization, and AI-native engineering practices
- Contribute to technical standards, reference architectures, reusable components, prompt libraries, development workflows, and delivery playbooks
- Stay current with developments across the Microsoft technology ecosystem and AI-assisted software development
- Remain hands-on enough to maintain technical credibility and provide meaningful support when teams encounter difficult problems
Required Experience
- 10+ years of experience designing, building, and delivering production software systems
- Deep expertise in C#, .NET, ASP.NET Core, and modern application architecture
- Significant experience designing, deploying, and operating production workloads on Microsoft Azure
- Experience modernizing legacy .NET Framework applications and migrating on-premises systems to Azure
- Strong understanding of distributed systems, cloud-native architecture, REST APIs, microservices, messaging, and event-driven patterns
- Experience with Azure services such as App Service, Functions, Container Apps, AKS, API Management, Service Bus, Event Grid, Azure SQL, Cosmos DB, Key Vault, and Azure Monitor
- Experience with Microsoft Entra ID, OAuth 2.0, OpenID Connect, managed identities, and cloud security practices
- Experience implementing CI/CD pipelines and infrastructure as code using Azure DevOps, GitHub Actions, Bicep, Terraform, or comparable technologies
- Strong knowledge of relational data modeling, SQL Server, Entity Framework Core, and application integration patterns
- Demonstrated experience using AI to accelerate code reviews, debugging, software design, implementation, testing, and technical problem-solving
- Experience designing or leading agentic development workflows involving parallelized coding, autonomous task execution, and orchestration
- Strong prompt engineering skills applied to software development, system generation, code analysis, testing, and documentation
- Experience using AI to generate and maintain technical documentation, architecture artifacts, specifications, and delivery assets
- Experience establishing human review, validation, security, and quality controls for AI-generated code and technical outputs
- Experience rapidly prototyping software solutions and leading the structured hardening required to move them into production
- Experience leading architecture and delivery within consulting or other client-facing environments, particularly at small or mid-sized firms
- Demonstrated ability to communicate with engineers, business leaders, and executive stakeholders
- Experience contributing to technical sales, proposals, estimates, and solution presentations
- BA/BS in Computer Science or a related field, or equivalent professional experience
Preferred Experience
- Experience with containers, Docker, and Kubernetes
- Microsoft Azure certifications, such as Azure Solutions Architect Expert or Azure Developer Associate
- Experience integrating Azure AI services, Azure OpenAI, LLMs, RAG patterns, or other AI-enabled capabilities into production applications
- Experience establishing AI-assisted software development standards, governance, or reusable delivery practices across multiple teams
Flexible Working Environment
We offer a flexible working model that allows employees to choose between remote work, on-site work at our offices in Boulder, CO, and Providence, RI, or a hybrid arrangement. We also welcome candidates based in Phoenix, AZ as we continue to expand our presence in the area.
This position is remote but requires candidates to reside in one of the following states: RI, CO, AZ, CT, FL, MA, MD, ME, MO, NC, NH, NJ, NV, NY, OR, PA, SC, TN, or UT. Preference will be given to candidates within commuting distance of our offices in Boulder, CO, or Providence, RI.
Benefits
- Base salary of $145,000–$190,000
- Medical and dental insurance
- Flexible Spending Account
- 401(k) with up to a 4% company match
- Trust-based time off
- Catered lunches when working in an office
- Dedicated time for self-directed, non-client work
- Dog-friendly offices
- Remote, hybrid, or in-office working options
- Paid conference attendance and annual education stipend
- Generous family leave policy