Software Development Engineer II - Full Stack

Expedia Expedia · Hospitality · Seattle, WA

Full Stack Software Engineer responsible for designing, implementing, and maintaining Expedia's critical production checkout applications, ensuring speed, availability, scalability, and operational excellence. The role involves end-to-end feature delivery, complex production issue resolution, and collaboration with cross-functional partners. While the role involves integrating and operating AI/ML-enabled solutions, its core focus is on the full-stack engineering of core travel booking systems.

What you'd actually do

  1. Design, implement, and maintain robust, secure, and scalable services and applications, including system design (LLD), API design, and data modeling to support business-critical capabilities across multiple domains.
  2. Write clean, reliable, and well-tested code, applying sound engineering principles, design patterns, and code review practices to improve quality, performance, and maintainability for complex systems.
  3. Own end-to-end delivery of features and services, from technical design and implementation through deployment, monitoring, and iteration, ensuring high availability and operational excellence.
  4. Diagnose and resolve complex production issues, perform root cause analysis, and drive long-term improvements in reliability, observability, and resilience across services and dependencies.
  5. Collaborate with cross-functional partners, contributing technical expertise to product discovery, backlog prioritization, and data-driven decision making while ensuring solutions are reusable and fungible across multiple domains.

Skills

Required

  • Bachelor's degree in Computer Science or a related technical field; or Equivalent related professional experience.
  • 2+ years of relevant professional experience.
  • Hands-on experience designing and implementing system components, including APIs, low-level design, and data modeling for single or multi-service ownership.
  • Proficiency in at least one modern programming language and associated frameworks, with solid understanding of data structures, algorithms, debugging, and unit/integration testing.
  • Experience contributing to the operational lifecycle of services (monitoring, alerting, deployment pipelines, and incident handling) within a team setting.

Nice to have

  • Full-stack engineer with proficiency in JavaScript, TypeScript, React, Java/Kotlin, and GraphQL.
  • Experience maintaining and operating at least four software projects or products in production environments, including bug fixing, troubleshooting, monitoring, and operational support.
  • Experience selecting technologies to solve business problems and understanding trade‑offs between languages and platforms.
  • Experience creating APIs consumed across teams or business units.
  • Solid understanding of how projects and teams interact with other teams and align to business needs.
  • Experience testing, monitoring, debugging, and fixing issues within defined SLAs.
  • Experience with AI-enabled software development workflows.

What the JD emphasized

  • critical production checkout applications
  • systems at scale
  • complex problems of scale
  • complex production issues
  • complex systems
  • complex problems