Our Tech stacks
- Our core services consist of hundreds of Golang microservices built around domain-oriented, event-driven architecture. All run on GCP, GKE, and Istio with autoscaling, resiliency, and chaos engineering mindset with full end-to-end observability.
- Our mobile platform was running on Flutter, component-based, composable architecture. Web app largely on TypeScript, React, NextJS, Tailwind CSS, and composable in-house design components and framework.
- Gitlab for all code repositories, CI/CD, with Backstage as a centralized developer productivity platform.
- In DevOps culture, you are fully responsible with design, build, and operate your own services with support from SRE, Platform team as needed …
- Open source lover, and open source contributor. All tooling and platforms used were in-house custom-built on popular open source projects.
Job Responsibilities
We are looking for a talented and experienced Software Architect to join our team. The ideal candidates will have extensive experience in software development and architecture, particularly in the back-end side using Golang programming language.
This role is definitely unique, when you will not involve to develop any the business features, insteding of that, you will contribute entire effort to technical, to review, not only back end side, but also cross-functional sides such as DevOps, QA, Mobile … to optimize all system’s architecture from the lagacy to the current designs, to make “a better/the best version” of be group application. Readiness to the very high scalable and avaiable system in the future.
Candidates who are strong in individual work, in great detail, and independence will be highly preferred.
- Overview the infrastruture, both of the legacy and current designs, the strengths/weakness and threads can come to our system in the future, with very high concurrency application for hundreds of millions of users over the world.
- Collaborate with cross-functional teams (DevOps, Mobile, Front-End, Data, Quality Assurance …) to disscuss the situation, convence them, re-design and modify the architecture, to make it transperancy, high available and strongly scalable as the best practices.
- Evaluate and select appropriate technologies and frameworks to use for back-end development.
- Develop and maintain back-end code libraries, frameworks, and internal tools.
- Perform code reviews to ensure best practices and maintain high code quality standards.
- Monitor and improve the performance of back-end systems to ensure high availability and scalability.
- Continuously improve the software development lifecycle and processes to increase efficiency and quality.