Software Architect
Job Description
We are looking for an experienced Software Architect to design and deliver scalable, secure and high-performance software solutions. The successful candidate will work closely with Engineering, Product and DevOps teams to translate business requirements into robust technical architectures and reliable software solutions.
Key Responsibilities
- Design and develop scalable distributed systems using Java, Golang and Node.js.
- Architect and implement microservices-based and cloud-native applications on AWS.
- Design high-performance backend systems using concurrency, caching and event-driven architecture.
- Lead the architecture and development of enterprise and financial technology applications.
- Design, optimise and maintain SQL and NoSQL databases, including MySQL, Redis and MongoDB.
- Apply appropriate database strategies including indexing, sharding and replication to support scalability and performance.
- Develop and improve CI/CD pipelines and containerised deployments using Docker and Kubernetes.
- Conduct system profiling, load testing and performance optimisation to improve system reliability, scalability and response time.
- Design secure and highly available systems with appropriate authentication, encryption and industry security practices.
- Collaborate with Engineering, Product and DevOps teams to establish technical standards and deliver business solutions.
- Provide technical guidance and mentorship on software architecture, distributed systems and application performance.
Job Requirements
- Diploma or Degree in Computer Science, Information Technology or a related discipline.
- At least 10 years of relevant experience in software development and software architecture.
- Strong hands-on experience in Java, Spring Boot and distributed systems.
- Strong experience with AWS, Docker, Kubernetes and CI/CD.
- Good knowledge of microservices architecture, concurrency, networking and distributed systems.
- Strong experience with SQL and NoSQL databases, including MySQL, Redis and MongoDB.
- Good understanding of software design principles, data structures and algorithms.
- Experience in financial technology, trading platforms or other high-performance systems will be an advantage.
- Strong analytical, problem-solving and communication skills.
- Able to work effectively with cross-functional teams and provide technical leadership.