Software Engineer I - Core Product - Notification Platform Team

PagerDuty PagerDuty · Enterprise · Toronto, ON · Software Engineers

PagerDuty is seeking a Software Engineer I to join their Notification Platform team. The role involves developing and enhancing event-driven notification systems, ensuring reliable delivery of critical alerts via SMS, Voice, Push, and email. Responsibilities include shipping product features end-to-end, writing maintainable code, building automated tests, monitoring performance, fixing bugs, and collaborating with cross-functional teams. The role requires strong CS fundamentals, proficiency in a modern programming language, and understanding of distributed asynchronous systems. While the company uses AI/ML and Automation, this specific role focuses on core platform development for notification systems, not direct AI/ML model building.

What you'd actually do

  1. Ship product features end-to-end with guidance: design, implement, test, deploy, and iterate
  2. Write clean, maintainable, and well-tested code in our primary stack (e.g., Elixir, Java, JavaScript/Typescript, React)
  3. Review peers’ code and incorporate feedback to raise code quality and consistency
  4. Build and maintain automated tests (unit, integration) and help keep CI/CD pipelines healthy
  5. Use dashboards to monitor and improve performance and reliability

Skills

Required

  • Strong CS fundamentals: data structures, algorithms, complexity, and basic systems design
  • Basic understanding of modern distributed asynchronous systems
  • Proficiency in at least one modern programming language (e.g., Python, Java, TypeScript/JavaScript, Go, or Ruby)
  • Solid understanding of web or service development basics (APIs, HTTP, JSON, REST)
  • Familiarity with version control and collaborative workflows (Git, pull requests, code reviews)
  • Test-first mindset: can write unit/integration tests and reason about correctness

Nice to have

  • Clear, concise communication and a collaborative, growth-oriented attitude
  • Bachelor’s degree in Computer Science or related field, or equivalent practical experience