Full-stack Engineer

Vietnam

Job Scope

You’ll be working on all aspects of our product and platform: from front-end visualizations, implementing scalable, data-heavy features, helping customers with their complex SQL, to managing our servers that processed thousands of heavy jobs everyday.

  • Build complex and interactive data delivery platform using HTML5, JavaScript; build reusable front-end JS/HTML components.
  • Design and implement our features from both backend logic to frontend interactions
  • Build back-end components that deal with data movement and logic.
Some Cool Things We've Done/You Might Do:
  • Build an in-house background job queue system using just PostgreSQL and Ruby
  • Design and build a generic data connector that works with all major databases (MySQL, PostgreSQL, SQL Server, Redshift, BigQuery, etc)
  • Build an Excel-like Pivot Table interface for slicing and dicing of data
  • Build a cohort/retention analysis color-coding table (think Mixpanel/kissmetrics)
  • Build a new domain-specific language for analytics
Interesting Engineering Projects
  • Zero-downtime deployment for long-running background jobs
  • Writing a database abstraction layer to interface with different database technologies at once: PostgreSQL, MySQL, Redshift, BigQuery, Presto
  • Implement alert monitoring system using statistical algorithms
  • ETL customer’s data from MongoDB to relational DBs with minimal overhead.
  • Parsing SQL into an AST (abstract syntax tree) to understand semantics and suggest optimizations
  • Build a sandbox environment to execute arbitrary Python code that still ensures security

Our Engineering Philosophy

Problem Solving Centric

We are not obsessed with any particular technology. We believe cool technologies might not get the job done, the right technologies do. We currently use Ruby, Node.js, VueJS with PostgreSQL and Redis but not afraid to try new things. We invented our own job scheduling system when we found nothing fit our needs.

Quality Over Quantity

We think performance and code quality should not be an afterthought. We favor code refactoring over adding new functionality. We focus on test-driven development, short-cycle deployment. We make sure our code is highly readable and modular with thorough technical documentations and proper design patterns.

Metrics-Driven Engineering

When it comes to engineering performance, we don't feel, we know. We don't just rely on intuitions, but let the numbers speak for itself. We have logging and monitoring properly set up. We know how fast (or slow) our site is, and how much improvements we've made compared to last week.

Our Engineering Culture

  • We don’t fancy-free food or ping pong table, we focus on building an environment where our engineers can be productive and concentrate on solving good problems
  • Our engineers own the product from end to end. They are involved in and get to speak directly with the customers to understand how they’re using it
  • We don’t write bad code to rush for the deadline. We prefer spending more time refactoring the code over shipping bad code

Requirements

  • Strong problem solving (most important)
  • Experiences with Ruby on Rails/Ruby is a plus
  • Have at least 1 year of experiences in Software Development
  • Some experiences with Rails, Ruby, PostgreSQL, Redis, SQLs, Vue.js, ES6, TypeScript
  • Good English communication skill (reading and writing)
  • Both senior and junior positions are welcome
What We Look For In You
  • Problem Solving: You don’t just write code based on requirements, you debate the requirements with us.
  • Coding: You write good code, you’ve written code that handle a lot of load, and you enjoy optimizing and refactoring your code to make it faster
  • Culture & Mindset: You’re a team player; you understand how it’s like working for a startup – doing anything and everything needed (from writing blog posts, to help customers with their data problem)
  • Tech Stack: we use Ruby, PostgreSQL, Redis, Vue.js, ES6, TypeScript and a lot of SQLs. It’s great if you know these, but it’s not a big deal. We’re confident you’ll pick these up quickly on the job.

Basically you will not just implement features based on a task list. We need your original ideas, creativity and critical thinking skills to help us build a great data platform.

Interview Process

- Round 1: A short chat with HR (Short chat to introduce Holistics, our product, discuss to understand your skills and experiences)

- Round 2: Technical interview with Engineering team

- Round 3: Do take-home assignment (offline - deadline 3days, will be sent after Round 2)

Why You'll Love Working

👨🏼‍💼 Training & career developments

  • Weekly TED talks to expand skills and knowledge.
  • Yearly budget to support personal and professional growth, well-beings and interest cultivations.

🌏 Competitive salary and benefits

  • 24/7 Healthcare Insurance, Periodic Medical Checkup.
  • Salary regular reviews, 13-month Bonus.
  • Stock Options for high-contributing individuals.

💕 Awesome company policies

  • A flexible work culture, Regular reviews, Remote policy.
  • 14 Annual leaves/year, 14 Sick leaves/year, Children care leave policy.
  • Weekly happy hours. Company trip and company-organized events.

🏢 Workstations provided for maximum productivity

  • MacBook (or Laptop) Grant
  • Mechanical Keyboard + Razer Mouse
  • Big-screen monitor(s)

🕧 Working time: from Monday – Friday, from 9.00 a.m. to 6.00 p.m.

🌐 Work location: Charmington La Pointe Building, 181, Cao Thang Street, District 10, Ho Chi Minh City, Vietnam.

Apply now