First seen by Alion on Sep 30, 2026.
Role & Responsibilities:
- Design and define scalable, secure, and high-performance software architectures aligned with business and technical requirements.
- Lead the architecture and technical design of complex applications, platforms, and distributed systems.
- Translate business requirements into technical solutions, architecture diagrams, technology choices, and implementation roadmaps.
- Define coding, design, integration, security, performance, and scalability standards across engineering teams.
- Provide technical leadership and mentorship to software engineers and senior developers.
- Review existing systems and identify opportunities for modernization, optimization, and technical debt reduction.
- Evaluate and recommend appropriate technologies, frameworks, cloud services, and third-party solutions.
- Work closely with Product, Engineering, DevOps, QA, Security, and Business teams to ensure successful delivery.
- Establish and enforce best practices for API design, microservices, databases, cloud architecture, CI/CD, observability, and system reliability.
- Conduct architecture and code/design reviews and ensure adherence to established technical standards.
- Identify technical risks, scalability bottlenecks, security concerns, and performance issues, and define mitigation strategies.
- Drive architectural decisions and document key technical decisions, trade-offs, and system designs.
- Participate in technology strategy, proof-of-concepts, and evaluation of emerging technologies.
- Support engineering teams during implementation and help resolve complex technical challenges.
- Ensure solutions meet requirements for availability, scalability, maintainability, security, and cost efficiency.
Preferred Candidate Profile:
- 8 - 10 years of experience in software development, system design, technical leadership, or software architecture.
- Strong experience designing and developing large-scale, distributed, and highly available applications.
- Strong knowledge of software architecture and design patterns, including microservices, event-driven architecture, distributed systems, and API-based architectures.
- Proficiency in at least one major programming language such as Java, C#, Python, Go, JavaScript/TypeScript, or C++.
- Strong understanding of REST APIs, databases, caching, messaging systems, authentication, authorization, and integration patterns.
- Hands-on experience with at least one major cloud platform such as AWS, Microsoft Azure, or Google Cloud.
- Experience with Docker, Kubernetes, CI/CD, infrastructure automation, and cloud-native technologies is preferred.
- Strong understanding of SQL and NoSQL databases and database architecture.
- Experience with system performance optimization, scalability, reliability, monitoring, and troubleshooting.
- Ability to make architecture decisions by evaluating technical trade-offs, cost, scalability, security, and maintainability.
- Excellent problem-solving and analytical skills.
- Strong communication skills, with the ability to explain complex technical concepts to both technical and non-technical stakeholders.
- Experience mentoring engineers and providing technical direction to development teams.
- Bachelor's or Master's degree in Computer Science, Information Technology, Engineering, or a related field is preferred.
Skills
System Design, Distributed Systems, Cloud, System Architecture, Microservices Architecture, SQL, NoSQL

