We’re looking for an all-rounder Software Engineer to join our growing digital team based at our offices at Babylonstoren. We are building innovative digital projects for our expanding group of e-commerce and hospitality businesses in South Africa, Italy, The Netherlands, and the United Kingdom.
You will be initially joining our team to assist in revamping our world-first Commerce Engine driving our client’s growth, before merging with our UK branch to assist in improving a series of mobile apps and other projects. The work will be incredibly varied. You will be expected to work on all aspects of our technology stack from databases, deployments, services, third-party integrations and customer-facing front-ends.
Helping Candide deliver these projects will mean you will have the option to travel and work on-site with our clients in South Africa, the UK, Italy, The Netherlands and other destinations to see how well your systems stand up to real-world stresses.
Our entire stack is written in TypeScript. The front-end apps use Angular and React Native, backed by a GraphQL API. We have a growing number of microservices written in Node.js, running serverless in Google Cloud Platform. We use RDBMS stores by default and other services (e.g. ElasticSearch and Redis) where relevant. As much as possible, our infrastructure is defined using Terraform.
We use Gitlab for continuous integration and deployment, taking advantage of feature branch deployments to verify behaviour and promoting to production several times a day.
We like types and tests to help us produce working and maintainable code, making use of immutability and pure functions where practical. Our focus on continuous integration and continuous delivery allow us to rapidly iterate, deploying new versions of our services many times each day.
Our robust testing and monitoring allow for stress-free deployments and to discover, debug and fix problems in production. We use GCP’s own tools to monitor logs, create alerts, visualise metrics and analyse request traces across our microservices. We have automated smoke tests that run against production in addition to the tests which run in CI.
What we’re looking for
We’re looking for engineers who are good communicators and thus are able to empathise and translate requirements into actionable backlog items. In addition, a learning mindset is essential since we regularly encounter new problems we have no idea how to solve. Finding out what the crux of an issue is and then owning it until resolution is reached is our everyday.
We want to hear from you if you have:
- Strong full-stack development experience using TypeScript and Node.js
- Good Angular and / or React skillset
- Experience designing, implementing and running large web applications
- Experience with SQL databases
- Familiarity with microservices, Kubernetes, and a DevOps culture
- Appreciation for automated testing, CI and CD
- Bonus: Experience with iOS or Android and React Native
Note: We encourage you to apply if you have any experience or interest in the below. Our current engineers do not all know everything on this list!
Commerce Platform Stack (currently):
- NestJS / Express (with Mikro-ORM, GraphQL)
- Angular (with Angular Material, NGXS, Apollo GraphQL)
- GCP (Kubernetes, CloudSQL - MySQL, Redis, CloudRun, Stackdriver, etc.)
- GitLab (source code, CI/CD)
- Jira / Confluence (documentation, sprint planning)
- CloudFlare (DNS, CDN)
- Cloudinary (Image and video CDN and transformation)
- Terraform (infrastucture as code)
- Helm (k8s deployment)
What you’ll get from us
- Hybrid working (we get together at least twice in our brand new offices each week)
- Daily catered lunch
- Access to new Recreation Centre, Gym, Swimming Pool (heated), Studios at Babylonstoren
- A nights stay, dinner and breakfast @ Babylonstoren for you and your partner
- Your choice of equipment
- Training budget for whatever you need to do your job more effectively
- Flexible working hours (core hours 10 am - 4pm)
- Anonymous mental health support. If you need it, we want to help you
- Quarterly socials and team building.
- International travel and/or visa sponsorship for the UK after 2 years.
- Significant discounts at Babylonstoren, The Newt in Somerset, and other estates worldwide (e.g. 50% off hotel stay, 30% off spa, wine, products, and everything else).
A successful application typically involves:
- A short phone/zoom introductory interview with a possible paired programming exercise.
- An on-site interview at one of our offices with a few engineers.
- A standard psychometric evaluation, either onsite or virtual.
How to apply