Overview of job
The position
We’re the team behind projects like BI tool , database diagram tool , and open-source project . We’re looking for another DevOps Engineer to help us build more awesome tools for data teams and developers.
This is a full-time position based in Ho Chi Minh City with flexible, hybrid WFH/WFO setup.
Job Scope
- This position is a hybrid between classic DevOps and Site Reliability Engineering.
- You will be working on all aspects of our infrastructure alongside our software engineering and product team to ensure the system has high uptime, reliability, security, and maintainability.
- Troubleshoot system issues for the internal engineering team as well as external customers.
- Perform incident resolution with full root-cause analysis of any infrastructure-related issue.
- Participating in on-call rotations, incident management and providing emergency response for production incidents
- Building scalable and reliable data pipelines as part of our main product.
- Setting up automated monitoring, internal tools and CI/CD pipeline to improve engineering's productivity.
- Enable logging, monitoring & alerting across all applications.
- Promote and evangelize DevOps best practices in the team.
Some cool things we’ve done/you may do
- Designing the infrastructure to be scalable with Terraform, Kubernetes and Docker
- Working with the software engineering team to build a general, scalable and reliable data pipeline as a major part of our main product
- Design a highly performant caching system for our production environment
Our application’s architecture
To get a taste of how working with us is like, here are some insights into how our application has been built so far.
The Holistics app works by allowing data analysts to connect to their data warehouses and develop reusable “data models”. This allows non-technical users to use a friendly drag-and-drop interface to explore the data and build dashboards, without the need to bother their technical colleagues.
On the backend side, Holistics is built using Ruby on Rails as the main web framework. Unlike the standard Rails project structure, we modularize the code base into local gems and to improve maintainability and extensibility, following . This also follows the pattern of “ with the gems being mostly functional/stateless code and engines handle the imperative/stateful part of the app.
By using to add static typing on top of Ruby, we ensure that most of our Ruby code has annotated type signature. This not only reduces a whole swath of common bugs that plague Ruby codebases but also significantly improves developer productivity through IDE/editor integrations.
We use PostgreSQL for our main production database due to its reliability and rich feature-set. We have built a , which is then executed using Sidekiq on top of Redis.
Vue.js 3.0 with TypeScript is our framework of choice for front-end development. To deal with displaying a huge amount of data, we build sophisticated, custom Vue components that lazily render the data. Since many complex computations are done on the front-end, we also use Web workers to decouple those computations from the main rendering thread. This enables smoother user experience while also decoupling computation from rendering logic.
The way we work
- We follow Spotify squad model. Our team is split into 4 squads, each (5-7 members) consisting of engineers, product managers & designers working closely together.
- How we work on a new feature:
- Product & Design Team spends time researching the problem, talking to customers and preparing Product Discovery Doc (PDD) and Product Requirement Doc (PRD).
- Engineering Team then performs a Technical Research. When we have a fairly good picture of the complexity and impact, we’ll start with the implementation.
- We do not compromise product and code quality for artificial deadlines. We refactor and think about code optimization regularly. We understand the good and bad of technical debt and use them to our advantage.
- We employ “pair programming” practices regularly where two team members work on a task together in one workstation. This brings a great deal of benefits, among which are faster knowledge transfer, reduced bus factor, better team cohesion and improved code quality.
- We have a strong writing culture: Almost everything is communicated through written documents. Just as our developers write reusable codes, we write .
- We maintain a problem-solving culture. Everyone is strongly encouraged to have rigorous understanding of a problem, separating as well as using to find the most important dimensions of a problem. Solutions are deliberated over with trade-offs explicitly listed in discussion documentation. Watch that our cofounder gave (in Vietnamese)
- We avoid being a . We’re aware more features do not equal better product.
- We value best practices of and follow them in all aspects of our operation
- We let team members rotate every 3-6 months. This allows them to try new things and learn different aspects of the business.
- Our culture stimulates continuous learning:
- We have a where team members present topics they are interested in.
- Engineering Team organizes as well as monthly technical workshops.
- Product Team has regular AMA events with external product experts
Interview Process
- Round 1: Technical interview with the DevOps team (understand your skills and experiences)
- Round 2: Pair-coding (case by case)
- Round 3: Culture & Behavior Interview
Compensation and Benefits
Compensation
- Junior levels: $1k-2.2k gross
- Senior levels: $2.3k-4.5k gross
- 13-month salary; annual compensation reviews
- Stock options (ESOP) for high-contributing team members
Benefits:
- Flexible working arrangement, hybrid work (WFO+WFH) policies
- 24/7 healthcare insurance; periodic medical checkup.
- Annual budget for personal and professional growth, well-being and interest cultivations.
- 14 annual leaves, 14 sick leaves, and child-care leave policy.
- Weekly happy hours. Annual company trip and company-organized events
- Workstation: Macbook/Laptop Grant, Mechanical Keyboard, 27-inch monitors
🌐 Working time: From Monday – Friday, from 9.00 a.m. to 6.00 p.m.
🌐 Work location:457 Nguyen Dinh Chieu, Ward 5, District 3, Ho Chi Minh City, Viet Nam