Software Engineer

DocuSign DocuSign · Enterprise · San Francisco, CA +2 · Engineering

Software Engineer responsible for end-to-end delivery of critical infrastructure for Docusign's agreement management workflows. This includes designing, building, testing, deploying, and operating scalable, highly available backend services and APIs in a cloud environment (Azure/AWS). The role emphasizes performance, reliability, observability, and security, with collaboration across product, architecture, and engineering teams. Responsibilities include full software development lifecycle ownership, building cloud-native microservices, contributing to shared platform capabilities, improving quality through automated testing, instrumenting services with telemetry, and participating in on-call rotations. The role also involves partnering with other teams to refine requirements and align designs, contributing to code reviews, and mentoring junior engineers.

What you'd actually do

  1. Own feature delivery across the full software development lifecycle: design, implementation, testing, deployment, and operational support for backend services and APIs used by B2B products and platforms
  2. Design and implement services and APIs using C# or TypeScript/Node.js, following best practices for modularity, testability, and maintainability
  3. Build cloud-native, microservices-based systems, leveraging Azure services, containers, and modern deployment practices to achieve high availability, resilience, and scalability
  4. Contribute to shared platform capabilities (e.g., libraries, config pipelines, telemetry and observability tooling) that are reused across multiple B2B services, helping other teams adopt and extend them
  5. Improve quality and reliability by authoring and maintaining automated tests (unit, integration, contract, and end-to-end where appropriate), defining test plans for your features, and participating in on-call rotations with strong root cause analysis and incident response

Skills

Required

  • Bachelor’s degree in Computer Science, Engineering, or related technical field, or equivalent practical experience
  • 5+ years of professional software engineering experience building production services or applications using OO languages such as C#, Java, or TypeScript/Node.js
  • 2+ years designing, building, and operating cloud-native microservices or APIs at scale (REST or gRPC), including version control, CI/CD pipelines, and automated testing
  • Experience with relational and/or NoSQL data stores and data modeling for production services
  • Demonstrated ability to own features end-to-end, including design docs, implementation, testing strategy, rollout, and operational support

Nice to have

  • Experience with Microsoft stack (C#, .NET, ASP.NET) in large-scale SaaS environments
  • Hands-on experience with Azure (e.g., AKS, App Services, Cosmos DB, Azure SQL) or comparable services in AWS
  • Prior work on shared platform components (libraries, pipelines, common services) adopted by multiple teams
  • Familiarity with observability and telemetry stacks used for monitoring and incident response
  • Experience participating in or leading RCAs and on-call activities for high-severity incidents
  • Experience working in an agile environment and delivering software iteratively
  • Strong fundamentals in data structures, algorithms, distributed systems, and troubleshooting in a production environment
  • Clear, concise communication skills and the ability to work effectively in cross-functional and cross-team settings

What the JD emphasized

  • 5+ years of professional software engineering experience building production services or applications using OO languages such as C#, Java, or TypeScript/Node.js
  • 2+ years designing, building, and operating cloud-native microservices or APIs at scale (REST or gRPC), including version control, CI/CD pipelines, and automated testing as part of your daily workflow