AHREFS PTE. LTD.
Permanent, Full Time
S$8000 - S$12000
What we need
Ahrefs is looking for a backend developer with deep understanding of networks, distributed systems, OS fundamentals and taste for simple and efficient architectural designs. Our backend is mostly implemented in OCaml with some C++ and Rust.
In this role, be prepared to deal with 25 petabytes of live data, OCaml and Linux on a daily basis.
- Proficiency in OCaml
- Knowledge of C++ and/or Rust is a plus
The ideal candidate is expected to:
- Independently deal with bugs, schedule tasks and investigate code
- Make well-reasoned technical choices and take responsibility for them
- Understand the whole technology stack at all levels: from network and user-space code to OS internals and hardware
- Handle full development cycle of a single component i.e. formalize task, write code and tests, setup and support production, resolve user requests
- Approach problems with a practical mindset and suppress perfectionism when time is a priority
- Write flexible, maintainable code and adapt to post-launch requirements/tweaks
These requirements stem naturally from our approach to development with fast feedback cycle, highly-focused personal areas of responsibility and strong tendency to vertical component splitting.
If your preference is leaning towards making the web functional and working on user-facing stuff, you may want to consider our ReasonML position instead.
Who we are
Ahrefs runs an internet-scale bot that crawls the whole web 24/7, storing huge volumes of information to be indexed and structured in a timely fashion. Our backend system is powered by a custom petabyte-scale distributed key-value storage to accommodate all that data coming in at high speed. With this data, Ahrefs builds analytics services for end-users in the Search Engine Optimization (SEO) space and a web-scale search platform.
We are a lean and robust team who strongly believe that better technology leads to better solutions for real-world problems. We worship functional languages and static typing, extensively employ code generation and meta-programming, value code clarity and predictability, and are constantly seeking to automate repetitive tasks and eliminate boilerplate, guided by DRY and following KISS.
If there is any new technology that will make our life easier - no doubt, we'll give it a try. We rely heavily on opensource code (as the only viable way to build maintainable system) and contribute back, see e.g. https://github.com/ahrefs. It goes without saying that our team is all passionate and experienced OCaml programmers, ready to lend a hand and explain that intricate ocamlbuild rule or track down a CPU bug.
Our motto is "first do it, then do it right, then do it better".
Closing on 19 Sep 2021