Position Overview
As a Software Engineer II at Diligent, you’ll play a hands-on technical role building and operating the core services that power the Diligent One Platform. Our team owns its services end to end — from architecture and implementation through deployment, monitoring, and on-call support. If you care deeply about what you ship and want real ownership over production systems, you’ll fit right in.
We build secure, scalable, event-driven microservices using TypeScript on AWS, and we treat infrastructure as a first-class concern. You’ll work alongside a tight-knit team that values engineering rigor, iterative delivery, and responsible use of AI tooling to move faster without cutting corners.
Key Responsibilities
- Design and implement secure, scalable backend services using AWS serverless technologies (Lambda, SQS, API Gateway), with a strong emphasis on event-driven patterns, observability, and operational simplicity.
- Own your services in production — participate in on-call rotations, monitor system health, and proactively address reliability and performance issues.
- Build and maintain infrastructure as code using AWS CDK, and champion CI/CD best practices that support continuous, low-risk delivery to production.
- Design and document well-structured RESTful APIs, collaborating with consuming teams to ensure contracts are clear, versioned, and reliable.
- Write thorough automated tests — unit, integration, and end-to-end — as a first-class part of delivery, not an afterthought.
- Contribute to architectural discussions and technical design with pragmatism and clarity; document decisions so the whole team can build on them.
- Use AI tools to accelerate coding, debugging, testing, and research — always applying judgment and validating outputs.
Required Experience & Skills
- 2–4 years of professional software engineering experience in an agile, backend-focused environment.
- Backend fundamentals: Solid understanding of how backend systems are structured — request lifecycles, data persistence, error handling, and writing readable, maintainable code. Comfortable with Node.js/TypeScript and SQL databases.
- API design principles: Understands what makes an API well-designed — clear contracts, consistent error responses, appropriate versioning, and security considerations. Practical REST experience required.
- Testing mindset: Understands the value of different test types (unit, integration, end-to-end) and writes tests as part of normal development — not as a separate phase.
- Cloud awareness: Has worked in a cloud environment (AWS preferred) and understands core concepts like managed services, scalability, and infrastructure ownership. Hands-on experience with specific services is a plus, not a prerequisite.
- CI/CD fundamentals: Understands the principles of continuous integration and delivery; has worked in a team that ships to production frequently and safely.
- Infrastructure as code concepts: Familiar with the idea of defining infrastructure declaratively; prior exposure to CDK, Terraform, or similar tools is welcomed but not required.
- AI Tooling: Uses AI tools to boost productivity; understands prompt engineering basics and evaluates AI outputs critically.
- Ownership mindset: Takes responsibility for what they build — follows through from implementation to deployment, monitoring, and iteration.
Nice to Have
- Hands-on experience with AWS serverless services (Lambda, S3, SQS, DynamoDB).
- Practical experience with infrastructure as code tools (AWS CDK preferred, Terraform, or similar).
- Familiarity with event-driven architecture and platform patterns (e.g. event buses, pub/sub, message routing — AWS EventBridge or similar).
- Experience with identity or entitlement systems (OAuth 2.0, SCIM, OIDC).
- Familiarity with MCP (Model Context Protocol) or AI-integrated backend services.
- Prior work in multi-tenant SaaS platform services.
Apply on company website Vancouver, British Columbia, Canada Hybrid Full-time $90,000 - $107,000 CAD