Your role
As aStaff Software Engineer, you’ll own the Workforce Management product domain area and play a key leadership role in designing, building, and scaling our products and cloud infrastructure. You’ll work closely with product managers, designers, and other engineering leaders to develop efficient and effective product solutions while ensuring reliability, performance, and scalability across our systems.
This position reports to our Engineering Manager and has the opportunity to be based in our London Office, UK. Please note that this is a hybrid position, with an expectation of being in the office 2-3 times per week.
What you’ll do
- Define a 1-3 year roadmap/vision touching the WFM team charter.
- Write clear and complete architectural design documents that other team members can easily understand.
- Provide estimates on technical resources and requirements necessary to plan and begin projects.
- Develop and maintain the WFM web application and services using modern technologies.
- Write clean, modular, and maintainable code using best practices along with unit tests.
- Participate in code reviews to ensure code quality, maintainability, and scalability.
- Ensure that features are shipped on time and with the highest quality.
- Take on-call activities to support and resolve issues arising from QA and customers.
- Be responsible for deploying new releases on a weekly release cadence.
- Collaborate with cross-functional teams to build and use standard components and practices across Dialpad products.
- Mentor junior engineers and help them grow their skills and expertise.
Skills you’ll bring
- 10+ years of experience in software engineering.
- Bachelor’s or Master’s degree in Computer Science or related field, or equivalent experience.
- Strong experience with Python or another language, Vue/React, Node.js, HTML, CSS, JavaScript, TypeScript, GraphQL, and cloud infrastructures (Google Cloud Platform is a plus).
- Experience with performance and optimization problems and a demonstrated ability to both diagnose and prevent them.
- Experience with databases, SQL/NoSQL.
- Experience with building reusable and modular components, both frontend and backend.
- Experience with mentoring junior engineers and helping them grow their skills.
- Experience with highly agile and iterative development processes.
- Strong debugging and troubleshooting skills.
- Strong communication and collaboration skills.