Software Engineer, macOS

Posted on
Apply for the job


Work on a productivity tool for developers
Small team that is light on processes
Fully remote (EU-friendly timezones)
Backed by great investors (Y Combinator, Accel, Chapter One and top angels)
Modern perks (MacBook Pro with 5k display, co-working space, monthly health benefit, …)

Raycast makes it simple, fast and delightful to control your tools. We’re looking for a Software Engineer to join our small team to craft, shape and improve our macOS app that redefines productivity tools for developers.
Raycast is a native Mac application with a significant focus on top-notch UI and interactions. We genuinely care about user experience, performance, privacy and ease of use. We had enough of dealing with slow and clunky tools. Raycast is our attempt to let you enjoy your daily workflows without all the distractions.
Terminals are outdated: Rich media elements aren’t supported, ASCII characters are too limiting and commands are hard to discover. Raycast combines the benefits of a command line with those of a modern user interface. It’s simple, responsive and extensible. At the core of this, is a rock-solid desktop client that handles plugins and connects to a store full of productivity tools. We need engineers that are eager to build a tool that improves their own day-to-day life to realise this vision with us.
We’re a fully remote company spread across Europe and looking for candidates in EU-friendly timezones. This position is for a full-time employment.
In this role you will…

Build user-facing features in the core product. You work on our macOS application which is our primary surface. You build new features that enrich the core user experience in the app and expand our library of custom and keyboard-driven UI components.

Co-own the product and work self-directed. We’re a small team of individual contributors. Everybody has autonomy and responsibility. You work on features from ideation over release to maintenance and shape the roadmap of the product.

Solve interesting technical and UX problems. Raycast fits many tools into a single user interface. For this, you solve hard problems like optimistic updates, database indexing and standardized user interactions with like-minded team-mates.

Improve performance and care about quality. You dogfood your own features with our nighlty builds, respond to user feedback in our community and jump into the profiler to make every interaction feel snappy. You automate tedious tasks. At best, directly in Raycast.

Wear many hats. In such a small startup, we’re all generalists. You might add a new page to our Vue.js website, set up an internal endpoint in our Node.js backend or write a blog post about a new feature.

You will be a great fit if…

You’re highly productive while writing quality code. We release updates every 1-2 weeks. You can break down big projects in small deliverables. You care about the outcome and take a pragmatic approach to deliver it. You keep things simple and rather write a little bit more code than adopting a third-party dependency. You know when you want a code review or need to write tests.

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. You add analytics to reason about changes in the app and pro-actively iterate.

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.

Our stack

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.

JavaScript/TypeScript for everything on the web. We use Vue.js with Gridsome for our website and deploy it with Vercel. Our backend is a simple Node.js app written with Express and hosted on Heroku.

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.

What we offer

We’re at beginning of our next chapter. You will join us at the right time to have major impact on the future of the company. We released Raycast 1.0, established a friendly community and are jumping head first into building a platform for productivity tools.

We’re backed by great investors. We’re backed by Accel, Y Combinator, Chapter One and angels such as Charlie Cheever (Co-Founder of Expo & Quora), Calvin French-Owen (Co-Founder of Segment), Zach Holman (Early GitHub engineer) and more.

We’re individual contributors at heart. We value full ownership and responsibility, choose quality over quantity and put our users first. We’re motivated by shipping truly great software.

We’ll treat you well. Get a competitive salary, equity and health insurance. Plus, we provide a monthly health benefit for a gym, pay for your coworking space, give you a MacBook Pro with 5K display and accessories and provide 25 days of paid-time off (PTO) plus all national holidays.

Comments are closed.