getyourguide-engineering-principles
Engineering
Nov 20, 2023

GetYourGuide Engineering Principles

GetYourGuide
Careers Team

At GetYourGuide, our engineering principles shape how we build and ship our products. They are not static rules but a dynamic framework that guides every decision, project, and innovation. These principles do more than dictate; they inspire and shape our approach to technology. 

{{divider}}

Core principles

For us at GetYourGuide tech, the set of carefully crafted engineering principles we've developed helps steer our engineers as they architect, write, test, deploy, monitor, and refine the code that powers and brings unforgettable experiences to millions of customers and thousands of suppliers in more than 150 countries. 

We organize our engineering principles into four main areas: building, operating, doing, and improving. In the following, we'll explore each of these categories in detail.


Build it - in a way that makes you proud

Simple services, clean interfaces

We focus on writing simple services connected by clean interfaces, structuring these services around business capabilities while keeping operational aspects in mind. This approach emphasizes the longevity of data and interfaces over the fluidity of code.

Clarity over cleverness

Our code is clear, straightforward, and easy to understand. We prioritize making correct code fast rather than making fast code correct, believing that maintainability and understandability are key.

Proven technologies

We default to technologies that are supported within GetYourGuide, being fast-followers rather than early adopters. This philosophy leads us to prefer open-source solutions and build only what is absolutely necessary, ensuring reliability and community support.


Run it - with confidence

Detect failures before they matter

We cover critical functionality with automated tests and use strategies like canary deployments to minimize disruptions. This proactive approach to failure detection is essential for maintaining a stable production environment.

Expect and manage failures

We design our systems to degrade gracefully when systems struggle or dependencies fail. This mentality prepares us for the inevitable and ensures resilience.

Informed Operations

By defining and measuring the right metrics and Service Level Objectives (SLOs), we always know what's going on. We set up alerts that notify us proactively when we miss our objectives and let us react swiftly and effectively to recover our systems if needed.

Do it - and solve the customer problem quickly

Understand the ‘why’

We define success in tangible terms, so that everybody understands how our customers benefit from our work. Then we focus relentlessly on implementing these improvements. This understanding drives our development process, ensuring that we deliver real value.

Pragmatism in action

We take on technical debt when appropriate, adhering to the principle that 'done is better than perfect.' This pragmatism allows us to deliver solutions quickly while maintaining the flexibility to iterate and improve.

Validating success

We use experiments to measure our impact, iterating if required and tying up loose ends before moving on. This ensures that our solutions are not just delivered but also effective.


Improve it - every day

Continuous improvement

We are committed to leaving code better than we found it, whether fixing problems, paying back technical debt, or making small improvements. This culture of continuous enhancement ensures our systems and practices evolve and improve.

Learning from mistakes

We encourage taking calculated risks if the upsite outweighs the downsides. We know that failures happen and sharing derived learnings, and codifying solutions is key. This approach helps solutions have a wider impact and contribute to collective knowledge.

Team growth

We push ourselves and our teammates out of our comfort zones to level each other up, valuing mentorship and openness to seeking help. This culture fosters personal and professional growth, making us a stronger team.

{{divider}}

Building the right way

These principles address the full software development life cycle, providing guardrails for our engineers to build features the "right way," run them reliably in production and iterate on them systematically.

Adaptable and evolving: growing with the organization

One of the most defining aspects of these principles is their adaptability. As GetYourGuide grows, our principles evolve in tandem, ensuring they remain relevant and effective. 

This evolution reflects our commitment to continuous improvement and our recognition that what works well for a team of 200 may need to be rethought for a team of 1,000. Our principles are alive, growing with us, and helping us navigate the changing landscapes of technology and market demands.

Beyond Guidelines: cultivating a shared understanding

These principles are more than just mere guidelines; they are a shared language that builds understanding and collaboration across our diverse team. 

This shared understanding is crucial in an environment where cross-functional teams must work together to ship features our customers and partners will love. It ensures that, despite varying backgrounds and areas of expertise, everyone is aligned with a common goal and approach.

Good is not just a standard, but a culture

The principles instill a culture where "good" is not just a standard to meet but a culture to embody. They encourage us to push boundaries, innovate responsibly, and prioritize customer needs. This pursuit of "good" is not about ticking boxes; it's about striving for excellence in every aspect of our work, from the code we write to the products we deliver.

Principles as a compass, not dogma

Importantly, at GetYourGuide, we view these principles as a compass, guiding us towards excellence rather than dogma that constrains creative and technical exploration. This approach ensures that while we maintain high standards and a clear direction, we remain open to new ideas, methodologies, and technologies that can enhance our work and products.

More than just code

Our engineering principles at GetYourGuide go beyond just coding standards; they are a testament to our commitment to quality, innovation, and customer focus. And these principles shape not only our technology but also our team dynamics and culture.

If you're passionate about technology and share our values of quality and innovation, come join us.

Other articles from this series
No items found.

Featured roles

Marketing Executive
Berlin
Full-time / Permanent
Marketing Executive
Berlin
Full-time / Permanent
Marketing Executive
Berlin
Full-time / Permanent

Join the journey.

Our 800+ strong team is changing the way millions experience the world, and you can help.

Keep up to date with the latest news

Oops! Something went wrong while submitting the form.