This position is no longer available.

DevOps internship: standardize our microservices release pipeline

Internship
Paris
Salary: Not specified
No remote work

Laiye France
Laiye France

Interested in this job?

Questions and answers about the job

The position

Job description

The Tech team at Destygo (10 people, but growing fast!) releases new versions of many microservices several times per week.

Each production release has a chance to break some feature. We do have unit tests on critical services, but experience has shown that they fail to capture the really tricky bugs that arise from the interaction between several microservices. Additionally, natural language understanding pipelines are difficult to test, especially because the underlying language models are completely configurable by our business teams. Lastly, the chatbot conversation trees can be configured by customers and include side effects, preventing us from simply testing the answers to pre-recorded conversations.

We currently employ manual production testing strategies for a few critical features, but we need a standardized way to test our releases on production traffic, with minimal impact on users.

As an intern in the Release team, you’ll build up on our existing tools to design, implement and deploy a better release pipeline. The goal is to allow us to quickly identify defects before they are visible by users. You’ll research how blue/green deployments, canary releases, or unique strategies tailored to our stack can improve our software delivery process, and implement the tooling to allow our developers to painlessly use these strategies.

An overview of the technologies we’re currently using:

  • We’re hosted on Amazon Web Services, with EC2 instances running Amazon Linux
  • Apart from our main web application written in Ruby on Rails, we use Python 3 for our microservices and internal tooling
  • Our production databases are backed by PostgreSQL and MongoDB
  • Infrastructure as code: Ansible for configuration management, Terraform for infrastructure management
  • A monitoring stack based on Telegraf, InfluxDB, Kapacitor and Grafana
  • and we’re open to introducing new technologies if they efficiently solve our issues

It’s likely you’ll have to tinker with most of these during this internship.


Preferred experience

Are you the person we’re looking for?

This internship requires some knowledge of software engineering (especially backend development), Linux operating systems, and web (or microservices) architecture.

We’re less interested by previous exposure to the technologies listed here than by your ability to understand a complex architecture and devise elegant, simple solutions to our challenges. We’re happy to help you learn any technology on the go.

You will be a good fit if you show initiative and enthusiasm. You will be expected to drive all stages of your project, from clarifying the requirements to the design, implementation and deployment cycles.

Are we the company you’re looking for?

We’re always looking for talented engineers and this internship may lead to a permanent position in the Tech team.

Some reasons why we love our jobs:

  • Meet an incredible team of passionate people from different backgrounds (engineering, sales, product management…). Get to know them better during offsite retreats or afterwork events.
  • Take ownership of your projects, from design to deployment, in a team who’s always available to help with any difficulty you could encounter.
  • Share insights on business, tech, processes or any topic that matters to you - this always sparks engaging conversations.
  • Keep an eye out on on what happens in the business or in the tech world.
  • Stay healthy by eating the fruits that are delivered to our office twice a week or joining our sport teams…
  • …or become less healthy while drinking beers or sitting in front of board games.

Want to know more?