Grab: Senior Backend Engineer at Grab (Singapore) (Singapore)
Posted: Dec 21, 2018
Get to know our Team:
When you're an engineer at Grab, you are part of the heart and soul of the company. Our passion is anchored in the work that we do, and this is reflected in the impact we make on millions of lives on a daily basis. Our team is empowered by creating amazing services and tools that serve millions of passengers, driving partners, and fellow grabbers.
Get to know the Role:
As such, we are seeking talented & passionate Engineers to join our team, you will have opportunities to work on multiple backend service clusters as well as participating in machine learning pipelines. It is very important that our team member take initiatives to identify problems, and have the right mindset and skill sets to solve them.
The day-to-day activities:
- Design and write with the cutting edge GO language to improve the availability, scalability, latency, and efficiency of Grab's range of services
- Work with engineering team to explore and create new design / architectures geared towards scale and performance
- Participate in code and design reviews to maintain our high development standards
- Engage in service capacity and demand planning, software performance analysis, tuning and optimization
- Collaborate with product and experience teams to define and prototype feature specifications
- Work closely with infrastructure team in building and scaling back-end services as well as performing root cause analysis investigations
- Design, build, analyze and fix large-scale systems
- Learn full stack performance tuning and optimization
- Debug and modify complex, production software
The must haves:
- A degree in Computer Science, Software Engineering, Information Technology or related fields
- Strong Computer Science fundamentals in algorithms and data structures
- Familiarity with running large scale web services; understanding of systems internals and networking are a plus
- Strong understanding of system performance and scaling
- Possess excellent communication, sharp analytical abilities with proven design skills, able to think critically of the current system in terms of growth and stability
- You can be a good coder in any language (C++, C, Java, Scala, Rust, Haskell, OCaml, Erlang, Python, Ruby, PHP, Node.JS, C# etc.), but willing to work on Golang
Our core services tech stack consists of Golang with Redis, MySQL, DynamoDB, Elasticsearch data stores as well as HAProxy load balancers. They all run on the AWS cloud infrastructure with auto-scaling abilities.
We use GitHub for our code repository and we adhere to the basic Continuous Delivery tenets utilising a host of tools to support our release pipeline and code quality. These include Travis CI, New Relic, PullReview, Code Climate, Papertrail, Gemnasium, JFrog and Jenkins.