Job Description Template: Software Development Engineer III
We are a diverse team of engineers and product managers, responsible for building Expedia Group's data streaming and ingestion platform, reliably handling hundreds of billions of messages every day.
Our goal is to build a world-class leading streaming platform that enables data producers and consumers to easily share and process information. We are building upon our platform using open-source projects such as Kafka and Kubernetes, all running in the cloud, and we love contributing our work back to the open-source community
What you’ll do:
- You will partner with the business to have a clear understanding of how own technology stack is tied to business outcomes and our bottom line.
- You will extend the best practices around building and operating the platform.
- You will extend outside of direct organization and collaborate with peers across a senior level organization.
- You will lead a community of practice and bring people together for shared learning.
Leadership and Mentoring:
- You will seek new technical skills in an engineering area.
- You will share new skills and knowledge with team to increase effectiveness.
- You will successfully conduct day-to-day work and solve complex issues in own specific technical engineering area.
- You will share domain and industry knowledge between cross-functional teams.
- You will serve as a guide to others by sharing and helping junior associates in their duties and demonstrate positive impact and leadership outside immediate team scope.
- You will fill in for peer engineering management as need arises and advocate efforts to remove tech roadblocks for their team for long term success.
Systems and Technological Integration:
- You will have knowledge of features and facilities for integration, and communication among applications, databases and technology platforms to bring together different components and form a fully functional solution to a business problem.
- You will have proven ability, experience and advanced knowledge of building and operating highly available, distributed systems of data extraction, ingestion, and processing of large data sets.
Application Development /Programming:
- You will creatively test and maintains software applications and related programs and procedures by using a variety of software development tools following design requirements of customer.
- You will act as a spokesperson for software design best practices and will advise on designing, performance/scalability tuning of batch and real time stream analytics and large data processing systems.
- You will research and recommend frameworks and architectural/code design patterns for large scale streaming platform.
- You will advocate for operational excellence (such as unit testing, establishing SLAs, programming for resiliency and scalability).
- You will advise on technical limitations of software design for products and provides alternative solutions.
- You will facilitate collaboration with different stakeholders with varied perspectives to develop effective solutions to issues.
- You will strive for optimum organizational efficiency by applying systems thinking across boundaries and making recommendations about policies/ processes.
- You will take a whole system approach to analyze issues and implement holistic solutions by ensuring that linkages between structure, people, process and technology are made.
- You will recognize outmoded methods of operation with current systems and design plans for disrupting them in a non-disruptive manner.
- You will design and lead advancements, innovations and changes in current solution designs relating to latest advancements in software engineering.
- You will report on status of difficult or high-level projects to local tech leadership via written or oral means. Ensures documentation is complete.
- You will justify technology choices to both technical and non-technical observers.
- You will share technology learnings and best practices across engineering community in organization.
Who you are:
- Bachelor's degree or Masters in a related Technical field; or Equivalent related professional experience.
- Prior experience as a Software Engineer/ mentoring junior engineers and applying new engineering principles to improve existing systems including leading complex, well defined projects.
- Equivalent experience includes:
- Maintained/ran at least 4 software project/product in production environments (bug fixing, troubleshooting, monitoring etc.)
- Strong in 2+ of languages and/or one language with multiple technology implementations
- Able to identify strengths and weaknesses among languages for particular use cases
- Able to create API's to be consumed across the BU
- Demonstrates the ability to select among technology available to implement and solve for need
- Understanding how projects/teams interact with other teams
- Able to understand and design moderately complex systems
- Ability to test and monitor code at the project level
- Understanding of testing and monitoring tools
- Ability to debug applications
- Ability to test, debug, fix issues within established SLAs
- Able to design software that is easily testable and observable
- Understanding of how teams’ goals fit a business need
- Ability to identify business problems at the project level and provide solutions
- Understands how teams' goals fit a business need.
- Identifies business problems at the project level and provides solutions.
- As well as being a passionate advocate of cloud computing, you have
- Familiarity with immutable infrastructure practices and benefits
- Familiarity with infrastructure as code tools such Terraform and build tools like Jenkins, Docker and other open source devops technologies.
- You have exposure to networking and security, how to apply them to a Cloud-based environment including AWS networking services such as VPCs, ELBs, Security Groups, and IAM roles.
- Experience with building observability tools for availability, usage & performance
- Appreciates that not all problems can be solved with code
- Appreciates the importance of coding best practices and documentation
- You have hands on experience with containerization (Docker) and resource scheduling (Kubernetes).
- You have familiarity with event streaming platforms such as kafka
- Experience in (one or more) Python, Bash, Go, Kotlin
Expedia Group recognizes our success is dependent on the success of our people. We are the world's travel platform, made up of the most knowledgeable, passionate, and creative people in our business. Our brands recognize the power of travel to break down barriers and make people's lives better – that responsibility inspires us to be the place where exceptional people want to do their best work, and to provide them the tools to do so.
Whether you're applying to work in engineering or customer support, marketing or lodging supply, at Expedia Group we act as one team, working towards a common goal; to bring the world within reach. We relentlessly strive for better, but not at the cost of the customer. We act with humility and optimism, respecting ideas big and small. We value diversity and voices of all volumes. We are a global organization but keep our feet on the ground, so we can act fast and stay simple. Our teams also have the chance to give back on a local level and make a difference through our corporate social responsibility program, Expedia Cares.
If you have a desire to make a difference with one of the most loved consumer brands in the world and to work in the dynamic travel industry, this is the job for you.
Our family of travel brands includes: Brand Expedia®, Hotels.com®, Expedia® Partner Solutions, Egencia®, trivago®, VRBO®, Orbitz®, Travelocity®, Wotif®, lastminute.com.au®, ebookers®, CheapTickets®, Hotwire®, Classic Vacations®, Expedia® Media Solutions, CarRentals.com™, Expedia Local Expert®, Expedia® CruiseShipCenters®, SilverRail Technologies, Inc., ALICE and Traveldoo®.
About Expedia Group
Expedia Group (NASDAQ: EXPE) powers travel for everyone, everywhere through our global platform. Driven by the core belief that travel is a force for good, we help people experience the world in new ways and build lasting connections. We provide industry-leading technology solutions to fuel partner growth and success, while facilitating memorable experiences for travelers. Expedia Group's family of brands includes: Brand Expedia®, Hotels.com®, Expedia® Partner Solutions, Vrbo®, Egencia®, trivago®, Orbitz®, Travelocity®, Hotwire®, Wotif®, ebookers®, CheapTickets®, Expedia Group™ Media Solutions, Expedia Local Expert®, CarRentals.com™, and Expedia Cruises™.
© 2021 Expedia, Inc. All rights reserved. Trademarks and logos are the property of their respective owners. CST: 2029030-50
Expedia is committed to creating an inclusive work environment with a diverse workforce. All qualified applicants will receive consideration for employment without regard to race, religion, gender, sexual orientation, national origin, disability or age.