About the Role

To ensure someone can be effectively supported throughout the intern we cn only look to hire an intern in either Singapore or in Europe.

You'll work remotely within our Middle-end / Tooling team, focusing on improving the observability of Dune, the OCaml build system. This isn't about cosmetic changes; it's about digging into Dune's core to expose how it builds things, making complex OCaml projects more understandable.

Responsibilities

  • Dive into the Dune codebase, identify areas where the build rules are translated into actions.
  • Implement modifications directly in Dune's source code to expose fine-grained information about builds.
  • Develop and contribute pull requests to the upstream `ocaml/dune` project, working with the maintainers.
  • Experiment with your changes and new tooling on real, large-scale industrial OCaml codebases to validate their usefulness.
  • Collaborate asynchronously with the team.

Requirements

Must have:

  • Solid OCaml programming skills. You need to be comfortable reading, understanding, and writing idiomatic OCaml.
  • Experience with basic Git and GitHub workflows (branching, committing, pull requests, code reviews).
  • Good written and verbal English communication skills for collaborating with a remote, async team and upstream maintainers.

Nice to have:

• Prior experience using more than one build system (e.g., Cargo, Make, Bazel, SCons, Nix, etc.).

What Success Looks Like

You've made significant contributions to Dune, resulting in working prototypes or even merged changes for a
tool that clarifies what happened during a build and why. This could involve exposing new internal Dune data
structures or developing a basic analysis tool on top, verified on an industrial codebase.

Ahrefs does not engage with agencies or third party recruitment solutions for the roles we hire for. If at any point we need help, we'll let you know! 

Rejoignez Ahrefs. Ayez un vrai impact au sein d’une équipe qui délivre des produits de qualité et qui met l’humain au premier plan.

Postuler à cet emploi

Qui nous sommes

Nous sommes une petite équipe qui croit fermement qu'une meilleure technologie conduit à de meilleures solutions aux problèmes du monde réel. Nous adorons les langages fonctionnels et le typage statique, utilisons abondamment la génération de code et la méta-programmation, valorisons la clarté et la prévisibilité du code, et cherchons constamment à automatiser les tâches répétitives et à éliminer le passe-partout.

Nous sommes guidés par DRY et suivons KISS. S’il existe une nouvelle technologie qui nous facilitera la vie, nous l’essaierons. Nous nous appuyons fortement sur le code open-source (comme le seul moyen viable de construire un système maintenable) et nous y contribuons.Nous publions parfois des articles sur tech.ahrefs.com.

Notre devise est : faites-le d'abord, puis faites-le bien, puis faites-le mieux

Écoutez notre équipe

Marketing

One of my favorite things about working at Ahrefs is being given the opportunity to grow across functions, roles and teams, as long as it makes sense for the company

Rebekah Bek,

Brand Communications Manager

Frontend

Every day is a new day where I get to solve interesting problems, or make improvements that have a positive impact on thousands of users.

Marketing

You have autonomy to make things happen. Despite the size of Ahrefs’ business, I’m part of a really lean team—cool things you see from our platform or events are the result of self-driven initiatives from each of us

Processus de recrutement

Écoutez notre recruteur expliquer comment nous recrutons nos ingénieurs

Lire l’histoire
1

Application

Candidatez simplement pour le poste pertinent sur notre site dédié aux carrières.

2

Présélection par le recruteur

Discutez avec notre recruteur pour en savoir davantage sur Ahrefs, nos équipes, notre culture, et obtenez quelques conseils sur le processus à venir.

3

Exercice à réaliser à domicile

La nature des missions dépend du rôle pour lequel vous candidatez : le recruteur vous accompagnera. Nous ne fixons pas de délais stricts et évitons de rendre les missions arbitraires. Nous essayons plutôt de les rendre agréables !

4

Entretien

Ce sont des discussions techniques assez peu structurées ; une occasion pour nous d’en apprendre davantage sur vous, et pour vous d’en apprendre plus sur nos équipes et notre travail. Il n’y a pas de LeetCode, d’énigmes de codage ou d’exercices au tableau.

5

Offre 🎉

Détendez-vous, plus de pression ! Plus d’entretiens, plus de missions. Attendez simplement de rejoindre l’équipe !

Postes associés


Backend

OCaml Developer

Singapore
Remote