About the team
Dialpad’s Product Engineering organization is responsible for building and maintaining the customer-facing features at scale across all of our cloud native products and services: Talk, Contact Center, Sales Dialer, Video Conferencing, and Voice Intelligence.
Every day, millions of people across the world use our technology for communicating effectively and efficiently. Product Engineering teams focus on areas such as billing, growth, search & analytics, core platform, frontend & backend infrastructure, developer and partner ecosystem & integrations and more.
In this role, the candidate will leverage and acquire a broad skill set ranging from Distributed Systems Engineering, DevOps, MLOps to deliver functionality essential to powering Dialpad’s Ai products.The candidate will be responsible for building features for the search & assist platform and contribute to the microservice architecture, the API, data model, and any relevant data pipelines.
This role is based in Kitchener, Vancouver.
Your role
As a Senior Software Engineer, you’ll own the Assist team’s roadmap to build / support / maintain the infrastructure powering some of the most valuable Ai products offered by Dialpad. Your impactful work helps improve Dialpad’s customer experience, infrastructure costs, Security, and Scalability. You seek proactively to solve a problem and do not hesitate to collaborate with other cross-functional teams at Dialpad. You are a great mentor and focus not only on your own development but also help grow other team members.
What you’ll do
In your first 30 days:
Get to know the cross functional team of engineers, product managers, designers and QA engineers that you will be working closely with. Set up your dev environment. Complete the engineering onboarding program (including training videos and documentation). Work on starter projects to get comfortable with the development process and tools. Starter projects are a good way to gain a wide breadth of exposure to different parts of the code base and to collaborate with engineers who are domain experts in different areas. Learn the common workflows, goals, and pain points of our users.In your first few months:
Work on features either solo or in groups of 2-4 engineers based on feature size. Take end to end ownership of a feature. This includes: Working with the product manager to fully understand the users workflows and the underlying user need or business problem a feature is aiming to solve. Working with the design team to finalize a user experience that is intuitive and accessible. Identify any dependencies with other engineering teams and engage appropriate stakeholders in the feature planning and design. Consider performance, debuggability, extensibility, user documentation, performance and usage monitoring and test coverage when designing and implementing features. Break down features into smaller deliverables. Track and communicate project status and progress with all project stakeholders.Ongoing:
Take ownership of an area under the assist team. Contribute to long term technical vision - how can we architect our code, data stores and data pipelines to meet the feature and performance goals of the future? Optimize the performance, scalability and cost of features/platform. Evaluate emerging technologies and shape the evolution of the tech stack to ensure the search platform meets current and future needs. Identify team-wide challenges, risks, technical debt areas and find ways forward through them. Advocate for new ideas and processes to improve the developer experience. Mentor and collaborate with fellow engineers to ensure features are built with good engineering practices and design. Build and maintain metrics, monitoring and alerting infrastructure to track performance, availability, cost and usage patterns.Skills you’ll bring
Retrieval Augmented Generation (RAG): In-depth understanding of how RAG systems work. Experience with prompt engineering and/or building a RAG system is an asset. Development skills: In-depth understanding of distributed systems, microservices and message driven architecture. Fluent in GOlang and Python 3 (experience with Rust and typescript optional). Passionate about real time performance optimization and high availability. Experience with Swagger, OpenAPI or equivalent code generation tools. Experience with gRPC or equivalent rpc protocol. System engineering skills: Familiar with Docker and Kubernetes. Familiar with cloud platforms. GCP (preferred) or equivalent (AWS/Azure). Familiar Terraform, Ansible or equivalent infrastructure as code stack. Familiar with Ci/CD frameworks and continuous delivery.Benefits, time-off, and wellness
An apple a day keeps the doctor away—and it doesn’t hurt that we offer flexible time off and great options for medical, dental, and vision plans for all employees. Along with that, employees also receive a monthly stipend to help cover your cell phone bill, home internet bill, and we reimburse for gym membership costs, a variety of wellness events, and more!
Professional development
Dialpad offers reimbursement for expenses related to professional development, up to an annual limit per calendar year.