We are seeking an experienced Software Architect with deep expertise in AWS and cloud-native technologies to lead the design, development, and deployment of cutting-edge software solutions. The ideal candidate will have a strong background in infrastructure as code (IaC), DevOps practices, and the ability to work with a variety of programming languages. You will collaborate with cross-functional teams to deliver scalable, secure, and high-performance systems, driving innovation across the organization.
Key Responsibilities:
- Architect and Design Solutions:
Lead the design of complex, scalable, and maintainable software architectures using AWS services and serverless technologies (Lambda, API Gateway, etc.). - AWS Cloud Expertise:
Utilize deep knowledge of core AWS services to build secure, scalable, and cost-effective solutions. - Infrastructure as Code (IaC):
Implement and manage IaC using AWS CDK and CloudFormation to automate the provisioning of cloud infrastructure. - DevOps and CI/CD:
Champion DevOps practices by designing and implementing CI/CD pipelines, automating workflows, and ensuring smooth deployments using serverless tools like AWS CodePipeline or github actions. - Team Leadership:
Provide technical leadership to development teams, mentor junior engineers, and ensure alignment with project goals and architectural standards. - Collaboration and Agile Practices:
Work closely with product owners, stakeholders, and developers in an Agile/Scrum environment to deliver business-aligned solutions. - Software Design Patterns:
Apply software design patterns, including those specific to serverless architectures, to create efficient, reusable, and reliable code. - State Machines & Workflow Orchestration:
Design and implement state machines and workflows using technologies like AWS Step Functions. - Programming Expertise:
Develop software using multiple programming languages, including TypeScript, JavaScript, and Java, ensuring best practices in code quality and design. - Lead by Example:
You will actively contribute to deliverables, demonstrating the ability to perform all necessary tasks to ensure the team's success. - Database Design and Optimization:
Collaborate with database teams to design, optimize, and maintain scalable and high-performance relational (RDS) and non-relational databases. - Continuous Improvement:
Keep up-to-date with the latest industry trends and AWS offerings, continuously improving system performance, security, and scalability. Be able to learn new technologies and skills and be ready to lead the team in their adoption.
Requirements:
- Bachelor’s Degree in Computer Science, Engineering, or a related field (Master’s degree preferred).
- Extensive experience with core AWS cloud services including VPC, S3, CloudFormation, Lambda, IAM, Route 53, RDS, ECS, EC2, SQS, and SNS, plus other relevant services.
- Strong expertise in Infrastructure as Code (IaC), preferably with AWS CDK or CloudFormation.
- Proficiency in DevOps principles, including designing CI/CD pipelines and automating deployments.
- Hands-on experience with multiple programming languages, including TypeScript, JavaScript, and Java.
- Strong knowledge of software design patterns and their application, particularly in serverless technologies.
- Solid understanding of database schema design and optimization techniques.
- Experience designing and implementing state machines (e.g., AWS Step Functions).
- Proven track record in a team leadership role with excellent communication and mentoring skills.
- Strong experience with Agile/Scrum methodologies.
Preferred Skills:
- Experience with containerization technologies (e.g., Docker, Kubernetes).
- Familiarity with microservices architectures.
- Experience in data security and privacy regulations.
- Knowledge of monitoring and logging solutions in a cloud environment.