This document is designed to help you understand what makes working at TryHackMe unique and the high expectations that come with it. Whether you're a Tech Lead, Mid-Level Engineer, Engineering Manager, or SDET, these core principles apply to everyone in Software Engineering. Our focus is on creating the right conditions for you to excel and deliver with purpose.
To set you up for success, we’ve outlined core principles that guide our approach to engineering at TryHackMe.
Life in a startup: Working in a startup brings unique challenges and opportunities. Some processes or tools may be missing, and engineers often wear multiple hats to get things done. Things move very fast, and we’re highly responsive to customer feedback, which can mean frequent pivots or changes. While it’s exciting and offers room for growth, it’s also hard work. For software engineers, you must embrace flexibility, quickly iterating on feedback, and balancing a hands-on approach with building solutions that support our growth.
Founder Led: As a founder-led company, we’re bootstrapped and profitable, with enough revenue from active subscribers and enterprise customers to support a large engineering team. This also means we control our own direction. The same vision and expertise that grew the company to this point continue to shape new features and strategy, so don’t be surprised if you find yourself on a call with Ben or Ashu. Each founder plays a very hands-on role, actively asking questions and showing genuine curiosity about the work you’re doing. There’s no need to feel defensive - embrace it! - This level of engagement is one of the unique things about TryHackMe and something you don’t often find elsewhere.
Focus on Delivery: We’re at a critical point where the need to deliver is more important than ever. With new and exciting products reaching our customers, your primary focus should always be on your squad’s goals. Pay close attention to why you’re building something, not just what you’re building. Each sprint counts - speed is one of our competitive advantages, and every successful sprint is an opportunity to deliver real value ahead of the competition. Every missed sprint is a lost chance to make an impact. Keep this in mind, and ensure each sprint represents a meaningful step forward for our customers.
Align with the Mission: We’re a startup in a highly competitive space, and we’re here to win. Our competitors move fast, so it’s essential that we’re aligned in both purpose and execution. To stay aligned, understand why we sometimes pivot quickly, why deadlines matter, and how quality must balance with speed. Recognise that beyond engineering, there are multiple teams working at TryHackMe to make our mission a reality. We’re all here to deliver world-leading Cyber Security training with an outstanding user experience and every action counts toward that goal. So, keep in mind the bigger picture: know who you’re building for, why it matters, and show up ready to contribute each day.
Bias for Action: Moving quickly is essential for outmanoeuvring the competition, and “Bias for Action” is at the core of that. We don’t need to be held back by excessive processes - if something needs doing, jump in and get it done. This means finding solutions independently, making impactful decisions under pressure, and treating the product as your own. Whether it’s improving a feature, fixing a bug, or helping a colleague, take ownership, act decisively, and always aim to add value.
Willingness to Contribute: Roll up your sleeves and get involved. We want everyone to do their best work here, which means working collaboratively and proactively. Those with a strong willingness to contribute make time to lend a hand, whether that’s picking up a code review, taking ownership of a sub-task, or fixing a bug. Balance your time, but if you see a chance to make an impact and have the bandwidth, jump in and make a difference. It’ll be noticed and appreciated and hopefully encourage others to do the same.
Look Beyond Your Squad: While it’s natural to focus on your squad’s priorities, remember to pay attention to the broader engineering environment. Attend product sprint briefings, learn about what other squads are working on, and explore the technical challenges they’re facing. While focusing on your own tasks, aim to build solutions that can be reused across the product. For example, creating a modular component could streamline similar work for other teams, saving time and supporting wider goals.
And finally: