Software Engineer, Distributed Systems | Dialpad | Remote (Argentina)

Software Engineer, Distributed Systems | Dialpad | Remote (Argentina)

Remote Argentina
Application ends: August 14, 2024
Apply Now

Job Description

About the team

Dialpad’s Ai Engineering team works centrally alongside Data Science, Telephony, and Product Engineering teams to produce The Good Ai. In this role, you’ll leverage and acquire a broad skill set ranging from Distributed Systems Engineering, DevOps, MLOps and Data Engineering to deliver functionality essential to powering Dialpad’s Ai products.

Your role

As a Software Engineer, you’ll work with the team to own the  development and uptime of Dialpad’s proprietary near real-time ML inference system, a large-scale distributed system built by leveraging technologies like Kubernetes, Redis, event-driven message bus systems, modern asynchronous Python, and a plethora of Open Source technologies.  You’ll contribute directly to powering Dialpad’s Ai products at scale, working closely alongside the Data Science teams to unleash Ai features that work for our customers. 

This position reports to our Engineering Manager, Ai Engineering and has the opportunity to be based in Buenos Aires, Argentina Office, or Fully Remote within the time zones of GMT-8 to GMT-3.

What you’ll do 

First 3 Months

  • You’ll acclimate and be paired directly with a peer (in addition to your manager) whose job it will be to make sure you have the information and tools you need to be successful
  • You’ll work primarily with fully asynchronous modern Python, but we are strong believers in using the right tool for the job, making use of other languages where it makes sense to in our stack
  • You’ll be exposed to Open Source Software. We employ many Open Source technologies to get the job done, and we love to contribute back to those communities. We also maintain Open Source codebases for libraries we’ve created ourselves

First 6 Months

  • You’ll collaborate. All levels of engineers on the team participate in authoring and reviewing PRs for code changes, and RFCs for more major system changes
  • You’ll have the opportunity to deploy code daily on Google Cloud Platform using modern best practices like Kubernetes, Docker, and CI/CD Systems
  • You’ll work with the team to continuously learn by constantly evaluating and applying state-of-the-art systems and techniques to ensure we build systems which are fault tolerant and highly scalable

First 12 Months

  • You’ll build and manage high-performance real-time data pipelines, taking significant ownership of key components of the stack
  • You’ll share. Exploring knowledge and findings with teammates is highly encouraged, with weekly opportunities to host or attend learning sessions including members of both Engineering and Data Science teams

Skills you’ll bring

  • You have a Bachelor’s Degree in Computer Science, Mathematics, Software Engineering, or a related field, or equivalent work experience
  • You have strong fundamentals in software engineering and computer science
  • You’re excited to work on a distributed team; you value collaboration whether your teammate sits beside you or across an entire continent
  • You have strong experience working with one or more dynamically typed programming language(s)
  • You have a strong desire to continuously learn
  • You enjoy efficient evaluation of a problem space and finding the right tool for the job
  • You measure & monitor everything ensuring stability, redundancy, and runtime
  • You make data-driven decisions – Measure twice, cut once
  • You enjoy learning from your experiences and sharing your knowledge with your team
  • You work on diverse problems across different systems
  • You appreciate code and system maintainability, and support continuous improvement
  • Fluency in English

Bonus points for experience with:

  • The Python ecosystem
  • Cloud providers such as Google Cloud Platform or AWS
  • git or other version control systems
  • Relational and/or non-relational database systems, Pub/Sub, Messaging Systems
  • Building and managing batch or streaming data processing pipelines, ETLs

Dialpad benefits and perks

Professional development

Dialpad offers reimbursement for expenses related to professional development, up to an annual limit per calendar year.