Job Description
About the job Software Architect
We are seeking a highly skilled Software Architect with extensive hands-on experience and a proven track record in designing highly scalable systems in cloud environments, preferably AWS. The ideal candidate will possess a deep understanding of cloud technologies, architecture principles, best practices, application security, client-server aspects, RESTful API design, and message queue systems. While experience with End-to-End Encryption (E2EE) is welcome, it is not mandatory for this role.
Responsibilities:
- Architect and design highly scalable, reliable, and secure cloud-based software solutions, with a focus on AWS services.
- Collaborate closely with cross-functional teams including product managers, engineers, and stakeholders to understand business requirements and translate them into technical specifications and system designs.
- Lead the implementation of architectural solutions, providing hands-on expertise and guidance to development teams throughout the entire software development lifecycle.
- Conduct technical evaluations and assessments of existing systems, identifying areas for improvement and proposing innovative solutions to enhance scalability, performance, security, RESTful API design, and message queue integration.
- Define and enforce architectural standards, best practices, and coding guidelines to ensure consistency and maintainability across projects.
- Stay abreast of emerging technologies, trends, and industry best practices in cloud computing, software architecture, application security, client-server communication, RESTful API design, message queue systems, and evaluate their potential impact on our architecture and technical stack.
- Mentor and coach junior members of the team, fostering a culture of continuous learning and technical excellence.
- Collaborate with security teams to ensure that the architectural designs meet the required security and compliance standards, and incorporate appropriate security measures, including encryption, access controls, and application security.
- Design and implement secure client-server communication protocols and mechanisms, ensuring data confidentiality, integrity, authentication, and RESTful API security best practices.
- Integrate message queue systems into the architecture to enable asynchronous communication between microservices and improve system scalability, reliability, and performance.
- Drive architectural decisions and provide technical leadership in resolving complex technical challenges and issues related to application security, client-server communication, RESTful API design, and message queue integration.
Qualifications:
- Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field.
- Proven experience as a Software Architect, with a focus on designing highly scalable and reliable systems in cloud environments, preferably AWS.
- Hands-on experience with a wide range of AWS services such as EC2, S3, Lambda, RDS, DynamoDB, ECS, EKS, etc.
- Strong understanding of cloud architecture principles, microservices architecture, distributed systems, and containerization technologies (e.g., Docker, Kubernetes).
- Proficiency in designing and implementing RESTful APIs and microservices-based architectures, including API versioning, authentication, authorization, and documentation.
- Experience with message queue systems such as Amazon SQS, Amazon SNS, Kafka, RabbitMQ, etc.
- Experience with Agile development methodologies and DevOps practices, including CI/CD pipelines, infrastructure as code (IaC), and automated deployment.
- Solid understanding of application security principles, common vulnerabilities, and best practices for secure software development.
- Experience in designing and implementing secure client-server communication protocols and mechanisms.
- Excellent communication and interpersonal skills, with the ability to articulate complex technical concepts to both technical and non-technical stakeholders.
- Strong problem-solving skills and the ability to think strategically while paying attention to detail.
- Experience with End-to-End Encryption (E2EE) is a plus, but not mandatory.