We are seeking a Software Engineer (Java/Go/React) to join our team and help build and maintain a set of microservices, a web portal, and internal tools to support financial services use cases. As a software engineer, you will be responsible for designing, implementing, and maintaining highly scalable and reliable microservices, creating automated tests, and following the standard SDLC while ensuring that the services align with the corporate design patterns and technology directions.
Requirements
Responsibilities
- Work in a cross-functional team that works end-to-end to develop and deliver features.
- Developing and maintaining user-facing features using the React library.
- Design and implement highly scalable and reliable services in Java (Spring Boot) or Golang.
- Collaborate with team members to develop efficient and production-ready solutions to complex problems.
- Leverage the corporate AI tools to boost productivity.
- Also, leverage other strategic tools, such as Rule Engine, Feature Flags, CMS, and Camunda, to make the system highly maintainable.
- Ensure that all microservices are highly available and fault-tolerant.
- Write high-quality and well-documented code.
- Ensure that code is tested, reviewed, and deployed promptly and efficiently.
- Continuously improve the performance and scalability of the microservices.
- Keep the code free of vulnerabilities and ensure dependencies are up to date.
- Troubleshooting and debugging issues as they arise.
- Participating in code reviews and contributing to a positive team culture.
- Ensuring that software is delivered on time and meets stakeholder requirements.
Preferred Qualifications:
- Bachelor’s or Master’s degree in Computer Science or a related field.
- At least 5 years of professional experience in software development, with at least 3 years in Java or Golang.
- Proven experience as a React Developer or similar role, strong proficiency in JavaScript, CSS, and HTML.
- Familiarity with RESTful APIs and asynchronous data fetching.
- Knowledgeable of common programming design patterns such as SOLID, DRY, KISS, or Domain-Driven.
- Good understanding of Java language features and threading models up to the latest LTS version.
- Strong understanding of microservice architecture, GraphQL, and RESTful API design and development.
- Understanding of software architectures such as Event-Driven, Microservices, CQRS, Reactive, Saga, or Hexagonal patterns is a plus.
- Having a strong fundamental understanding of Java Threads or Go Routines.
- Solid understanding of Spring Reversion of Control and Dependency Injection concepts, or Golang interface for loose coupling.
- Experience with Reactive stacks, such as Spring WebFlux, is a big plus.
- Experience with containerization technologies such as Docker and Kubernetes.
- Experience with relational databases (e.g., PostgreSQL, MySQL) and/or NoSQL (e.g., MongoDB).
- Experience with version control systems such as GitHub or GitLab.
- Strong problem-solving skills and ability to work independently.
- Excellent communication and interpersonal skills.
Benefits
- 23 Annual days holiday (Start and Fix at 23 days)
- 15 Public Holidays
- Provident Fund
- Health insurance (including immediate family)