Overview
Software Development Engineer II on Expedia Group's Clickstream team, designing, building and operating the real-time data platform that captures and processes user behavior across Expedia Group sites and apps.
What you'll do
- Design, build, and operate highly available, low-latency streaming services and data pipelines (primarily in Java/Kotlin) running in public/hybrid cloud environments.
- Write clean, efficient, well-tested code; practice pair programming and conduct thorough code reviews.
- Apply object-oriented design, distributed computing, performance/scalability tuning, and advanced data structures/algorithms to real-time streaming and data processing.
- Build and evolve microservices and data APIs that power analytics and personalized experiences.
- Implement robust testing, monitoring, alerting, and observability to ensure reliability and rapid incident response.
- Troubleshoot complex production issues, perform root-cause analysis, and drive long-term fixes and improvements.
- Collaborate with product managers, data engineers, analysts, and platform teams to deliver high-impact solutions.
- Contribute to technical design documents; communicate trade-offs and decisions clearly within the team.
- Stay current with advancements in cloud data platforms, streaming technologies, and best practices; mentor junior engineers.
What you'll need
- Bachelor's or Master's degree in Computer Science or a related field, or equivalent professional experience.
- 2+ years of professional software development experience, including building and operating backend/microservices in Java.
- Hands-on experience with streaming platforms (e.g., Kafka, Kinesis, Pub/Sub) and event-driven architectures.
- Experience building production-grade data processing applications in public/hybrid cloud environments (e.g., AWS, GCP, Azure).
- Solid understanding of software engineering fundamentals: algorithms, data structures, concurrency, distributed systems, and design patterns.
- Proficiency in testing strategies (unit, integration), CI/CD, monitoring, alerting, and incident management.
- Familiarity with observability concepts and tools to monitor application health and performance.
- Strong debugging, problem-solving, communication, and collaboration skills; self-starter with a learning mindset.
- Familiarity with basic AI tools (e.g., GitHub Copilot, code assistants) to accelerate development or documentation, used responsibly within company policies.
Nice to have
- Kotlin or Scala experience.
- Experience with Kafka Streams (KStream) and/or Apache Flink for stateful stream processing.
- Familiarity with schema registry, data lake technologies, and data quality frameworks.
Read the full description and apply on the company’s own careers page.