About This Role
This role is for a highly skilled and experienced Application Software Architect to join a dynamic team. The ideal candidate will have a solid background in back-end and front-end system design, data model design, API design, cloud-native design, and secure-first design principles. They will also possess a strong understanding of software engineering, Agile practices, cloud architecture, Generative AI and prompt engineering, as well as the modernization of existing systems through maintenance, reverse engineering, and refactoring of legacy applications.
Responsibilities
- Develop and implement robust system architectures (services, integrations, and UIs) that meet business requirements and align with industry best practices
- Own end-to-end architecture from front-end to back-end and data layers
- Design scalable front-end architectures using modern frameworks (e.g., Angular or React)
- Architect and implement micro-frontend solutions, including Webpack Module Federation, to enable independently deployable UI modules
- Define contracts, composition strategies, routing, and shared library strategies for micro-frontends
- Design efficient and scalable data models to support application functionality and performance
- Create and maintain well-documented, secure, and scalable APIs
- Architect cloud-native solutions leveraging Azure services to ensure scalability, reliability, and cost-efficiency
- Apply OWASP guidelines and secure coding practices throughout the SDLC
- Design and review cloud security controls (identity and access management, network security, secrets management, compliance)
- Define and implement cryptographic practices (data-at-rest and in-transit encryption, key management, tokenization where applicable)
- Apply solid software engineering principles to develop high-quality, maintainable, and efficient code
- Participate in Agile ceremonies, contribute to sprint planning, and ensure timely delivery of features
- Design and implement cloud infrastructure and services, with a strong understanding of Azure and its security services
- Analyze, maintain, and enhance existing and legacy applications to ensure stability, performance, and security
- Perform reverse engineering of poorly documented or legacy systems to understand architecture, data flows, and integration points
- Plan and execute refactoring and modernization initiatives (e.g., migration to microservices, micro-frontends, and cloud-native architectures) while minimizing business disruption
- Introduce automation, monitoring, and observability to improve reliability and maintainability of legacy and modernized systems
- Lead refactoring efforts to improve code quality, modularity, testability, and adherence to architecture guidelines and patterns