Engineering Manager 🔥
We aim to become the leader in developer productivity. To achieve this, we built a high trust environment where engineers can concentrate on the work that matters. We optimized the company for high output. We're looking for an Engineering Manager that helps our programmers to thrive in this environment.
A lot of words are written about people management and in particular with a focus on software development. We think about our first people manager as a coach. Somebody that takes the time to understand the strengths and weaknesses of each person. Somebody that understands what it means to work on something that you are passionate about. Somebody who can help a person realize their goals. You won't help junior developers to become better coders. Everybody at Raycast has been in the industry for a while. You're gonna have a frontset at defining what it means to become the best engineering team in Europe. In this key role, you'll make sure that we function well as a team, support everybody to work towards their strengths and cut away bureaucratic non-sense.
We're a fully remote company and looking for candidates in the UTC timezone (London, Lisbon, Dakar, ...) ± 3 hours. This position is for a full-time employment.
In this role you will...
- Cultivate our engineering principles. All of us are makers and we optimize our time to produce a great piece of software. We follow rituals to ship an update every week and make sure we delight our users. You'll hold our team accountable to these standards.
- Introduce processes to make us better. We're lean on processes and work very self-driven. Growing the team means more communication and making sure autonomy doesn't end up in isolation. You'll make sure that related teams work efficiently together.
- Embrace feedback. We are on our way to become the best engineering team in Europe. To get there, we need to be candid. Help each other to thrive and call out things that hold us back. Being open and providing feedback are core parts to this. You'll drive this.
- Wear many hats. In such a small startup, we're all generalists. You might manage designers, write about our engineering culture on our blog or recruit specific roles.
You will be a great fit if...
- You're an engineer. You did it yourself. You went through your own engineering career ladder and have seen the ups and downs. You have experience that you can provide to others. The learning that you got from other senior folks are fundamental to who you are nowadays.
- You don't drink Kool-Aid. There is too much engineering management out there that is more of a cult than it actually helps. You evaluate best practices and apply them to our situation.
- You're product-minded. Raycast is designed to keep developers focused. You have a sense for great user experience and feel when something is off. You prefer polishing a feature instead of shipping soul-less pixels. Even if you don't necessarily code the features yourself, you love riffing about new ideas and help others squeeze out the most of their potential.
- You put our users first. Throughout Raycast you find many little details. You pay attention to detail and provide our users a delightful experience. You can't stand bugs and don't shy away from user feedback.
- You're an empathetic communicator. You treat technology as tradeoffs. You may be opinionated but you're not ideological. When disagreeing, you communicate thoughtfully your perspective and compromise when needed. You're thriving in a team environment and hold your colleagues accountable.
Swift for our macOS app.Everything is written in Swift using AppKit with Swift Packages. We don't use SwiftUI because it's too premature for rapid development. We rarely adopt third party dependencies. Some are GRDB for our database, Sentry for crash reporting, Nuke for image fetching and a few C libraries to crank up performance.
React + Node.js for Extensions API.We use Node.js as a runtime and React as a UI framework for extensions. React components are rendered as native AppKit components, no HTML or CSS involved. The entire API is written in Typescript. The setup is very similar to how React Native works on mobile.
Ruby on Rails for backend.We use Ruby on Rails for our Extension Store backend and Heroku for hosting / deployment.
Modern work tools for everything.Linear for issue tracking, GitHub as source control, Sentry for error reporting, Segment and Amplitude for analytics, Slack for internal communication, Figma for pixels, Notion as knowledge base and a few others. As a team, we enjoy using CleanShot, Bear, Things and more Mac apps.