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:
It’s likely you’ll have to tinker with most of these during this internship.
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.
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: