This is a ‘we’re hiring’ post, but I’m hoping to make it a little bit different by sharing the philosophy behind how we run our engineering team at Raygun.
Raygun, the company, was co-founded by Jeremy Boyd & I. We are both software engineers by trade, but business people too. We understand the value of great marketing, brand and sales and work on those areas — but we are engineering led at our core. We like to bring engineering thinking to the work we do, no matter what team it is at Raygun.
Now, if you know Jeremy & I, you may know that we’ve done a lot with the Microsoft stack. This makes some folks think that we’re only looking for .NET developers. Totally untrue. The Raygun platform supports more than 20 languages and platforms. The Raygun platform itself is built with several languages itself. There is certainly a significant C# component, and we are very excited about .NET Core being able to be run on Linux, but it’s not a show stopper if you’re a hardcore Python or Ruby developer (or any language!). Great software engineers know how to solve problems, not just the syntax of their favorite language.
The importance of being engineering led, means you’re on the same wavelength as us. We get software development and love to engage on the topic.
I know, it’s such an overdone term these days so I’m hesitant to use it. However, it would be a lie to suggest that Raygun doesn’t deal with substantial volumes of data. Since you started reading this post we’ve processed tens of millions of requests, each with 50+ data points. Practically speaking, I’d be surprised if there’s many companies in New Zealand that are ingesting and processing the volume of data that we see every day. And what’s even more satisfying is that all of that data is used to help software developers around the world build better software and deliver even better experiences for their customers. So it probably comes as no surprise that one of the main points of happiness among our team is that you can say we’re one of the few companies where you get to scratch your own itch, and build the tools you’d like to use when developing software!
So if you like the idea of working with a tsunami of data, and making it all dance in real time for customers (e.g. your fellow developers around the world), then we’d love to talk with you.
With all this data we have to process, we are always reviewing how we scale our software. These days the stock answer to scaling software seems to be:
- Scale out more servers (Jeff thanks you in advance)
- Put more engineers bums on seats
Now, to a degree, this is an acceptable approach. But, and it’s a big but, it seems to be what business leaders run to the second they need to scale.
I personally believe in high performance software. I’d rather spend some time optimising the code base to run faster than need to pay for another server, if possible. There is a cost/benefit analysis to run, but generally speaking, if I’m making Jeff Bezos happy, I know we could be doing a better job!
As our ambitions grow, we certainly do need more engineers to build out additional products. But not that many more engineers. When I hear stories about teams of 20 people being needed to build a feature, and that it took two years to deliver, it blows my mind. I’d hate to be on a team that moved that slowly! Momentum begets momentum. I believe strongly in having a smaller team of excellent engineers who are passionate about building great software. Less people on a team means you reduce the management overhead and maintain high bandwidth communication. It also reduces the costs to the business when it comes to tooling, office space and computers, meaning we can invest more in those things per team member.
Like our code, we like our team to be efficient so if this resonates with you then we’d love to talk.
Balancing it all
Jeremy & I have worked hard to ensure that Raygun isn’t a business that burns out the team – the office is almost always empty by 5:30-6pm, with folks heading home to their families. Having said that, in turn, we don’t really mess around when we’re at work. You won’t find a slide in the office, instead you’ll find clever people working extremely hard at building best-in-market software, delighting tens of thousands of users and shipping continuously every day.
We want a team of like minded individuals who have a ‘get it done’ attitude and a bias for shipping code.
Of course, we do operate globally (we have folks in Wellington, Portland, San Francisco, Denver and Seattle – but engineering is in Wellington) and there are occasional times where team members may need to be up at some time due to supporting customers or the platform but we try very hard to make that a rare occurrence.
We do have fun things like Hack Days, quarterly dinners/events out as a team, Friday lunches together etc – but if that’s your primary driver, then we’re likely not the best place for you.
Writing amazing code to make customers happy and not burning ourselves while doing it is what we’re all about.
Sound like you?
If so, we’d love to have you apply for our software development role: https://raygun.com/careers
Please note: This role is based in Wellington, New Zealand. While our preference would be to hire locally, if you’re overseas (and awesome) we can look at sponsoring your Visa to come to New Zealand — it’s a pretty damn cool country.