What is Geckoboard?
Geckoboard is a software company that helps businesses put data at the heart of their culture and decision making.
We don’t believe it should be difficult or expensive for businesses to access their data, or visualise it in a way where everyone can understand what’s going on. But with most of the solutions available – it is. Our aim is to level the playing field.
Founded in 2010, over 5,000 customers now subscribe to Geckoboard, because our dashboard tools are affordable, easy to use and can genuinely change how a team benefits from their data.
And that’s no accident. Our solutions are popular because they’ve been developed by a talented team of people who genuinely care about making useful products that solve real-life problems.
As a Backend Software Engineer, you’ll be joining a team of empowered Engineers in a supportive environment that values experimentation, work-life balance, and personal development.
We work in small and focused cross-functional teams, with a mix of Frontend and Backend Engineers, Product Managers, and Designers. The composition of our teams is fluid and we encourage Engineers to rotate between different teams and projects based on their interests, skills, and learning opportunities.
Our product teams build and maintain new product features based on early and frequent engagement with our customers. Our teams aim to create a product that genuinely serves our customers’ needs and to provide a great experience for them. Examples of recent work include a brand-new platform for rapidly building integrations with third-party APIs by plugging together common components to create simple “workflows”; as well as a framework for building sophisticated Go services to power our top-tier integrations like Zendesk and Google Analytics.
Our platform team enables other teams to be successful by continually investing in our tooling, systems, and developer experience. Some of their recent work includes a new feature flagging system, a 70% reduction in our deployment times, and a rewrite of our login and session management system.
We carefully scope our projects so that we can deliver value incrementally and take feedback on board as early as possible. We’re also equally mindful about technical debt and make sure we dedicate time to addressing it.
Finally, learning is a big part of our engineering culture. Every two weeks, our team takes a “Lab Day”, when everyone is free to work on projects that interest them, learn new skills, or contribute to open source.
Geckoboard’s backend is implemented as a collection of services, the large majority of which are written in Go, except for a few that use Node.js or Ruby.
Our Go services tend to expose a gRPC interface and we use Envoy to route requests around the network (https://medium.com/geckoboard-under-the-hood/we-rolled-out-envoy-at-geckoboard-13c45b4eaddd). If a service needs a datastore, it will usually be PostgreSQL, but we also have Redis, memcached, and S3 within our stack.
Our frontend is primarily a React.js application. We run a GraphQL gateway written in Node.js that allows the frontend to communicate with the gRPC Go services. We wrote about our experience of adopting GraphQL in this blog post: https://medium.com/geckoboard-under-the-hood/why-we-moved-to-graphql-at-geckoboard-3e3564c89a9b.
We’re a small team, but we ship to production around 50 times per week, and use feature flags to user test new features with customers before we release them. When a change is merged, the code can be running in production in less than ten minutes.
Why work at Geckoboard?
We’re not interested in “hypergrowth”: Geckoboard has been around since 2011 and we are all here to build a sustainable, long-term business. We have ambitious plans to grow the company, but we will only get there by building a great product that customers love, not by taking on unsustainable amounts of funding and giving up control over our destiny.
Building a supportive, humane work environment is hugely important to us. We believe strongly in the importance of work-life balance and never work overtime or weekends. We encourage everyone to fully disconnect from work when out-of-hours or on annual leave. Some of us work part-time and everyone is free to work flexible hours to fit around their family and personal commitments.
On the Engineering team, we’re proud of our pragmatic and mature development process. Iterative work and continuous deployments are at the heart of how we work, which means we always seek the smallest slice we can ship, and use feature flags to help us do that.
In general, we value lean and lightweight processes that adapt to each team’s individual circumstances. We don’t use “story points” and avoid making up fake internal deadlines; instead, we trust our teams to come up with the most effective way to do their work and focus on removing blockers that stand in the way of shipping early and often.
As a company, data and metrics are at the heart of what we do. In Engineering, we are heavy users of Honeycomb, which allows us to get deep insights into how our systems are behaving in production, giving us the confidence to ship new code and know exactly how it will perform.
Finally, we don’t use Jira.
You should apply if
- You would like to write primarily Go code as part of an experienced team that's been using it for many years
- You want to build an interesting product that delights its users and genuinely serves their needs
- You enjoy working in a collaborative, open and creative environment
- You actively seek out feedback in your work and are able to share your feedback with others
For this role, we’re looking for candidates who have some professional experience of backend development. Direct experience with Go is not necessary, as we will provide on-the-job training and development, as long as you are interested in making Go your main language.
We also value candidates with a broad range of experience, and encourage backend engineers to get involved in frontend development from time to time.
This position is open to a remote candidate based either in the United Kingdom or in Western Europe (GMT or CET time zones). If you are based near London, you can also choose to work out of our Shoreditch office, on as many or as few days a week as you wish.
Geckoboard is an equal opportunity employer with teammates all around the world. We're committed to building a company that embraces and celebrates diversity in all its forms, and is truly welcoming and inclusive to all. We’re always looking for people from diverse backgrounds with unique perspectives and skills to join our team, and encourage anyone interested to apply.
Does this job really require Go skills? If not, please report it and we will take a look.