Who we are
Sketch is both an award-winning vector drawing application for macOS and an online ecosystem to support the collaboration and coordination of designers. Sketch has been around for 10 years, and in that team the company has grown from two people to over 100. Our Mac developers are spread spread across the world, from Scotland to South Africa, and Lithuania to the East Coast of the US.
What do we do
The Mac team at Sketch is responsible for developing and maintaining Sketch.app, the Mac application designers use to interact with Sketch. There's a rotating Base Squad working on constant steady improvements to the app, alongside Feature Squads brought together to work on larger new features. Squads usually involve two or more Mac and Cloud developers as required plus project management, QA and design. The Mac app has a large body of existing Objective-C but most newer development is being done in Swift. Most relevant to this position is that the rendering team use C++ for GPU programming.
What you will do
Day to day, you will work with a project manager and other engineers to build features for Sketch. Sketch is 100% distributed company so engineers are able to be pretty flexible, but in this situation consistent and excellent communication is vital, and we’d expect you to be available for a reasonable overlap with European timezones.
You’ll use tools like Notion and Github to manage your work, and in addition to development, you'll review Pull Requests from other engineers to keep our code quality high, and our team constantly improving. Our infrastructure team manages a continuous integration environment and all work gets built and tested there before being picked up by the QA department and merged. You'll help us release a new version of Sketch every 4-6 weeks.
What are we looking for
For this position, we're looking for someone with strong C++ skills and experience with general purpose computing on GPU. You'll have a good knowledge of linear algebra and geometry and a basic understanding of 2D vector graphics pipeline and related primitives. Experience with rendering vector graphics on GPU is a very big plus.
Our setup is somewhat unique in that we are 100% distributed. Your teammates will be spread across Europe, the US, South America and South Africa. You need to be comfortable working in Slack and communicating clearly with your team.
What do we offer
Sketch is an industry leading application used by millions of people and your work will directly impact them. For this role in particular, rendering the user’s content smoothly and cleanly on a Mac is the most visible and important part of Sketch — and you'll be directly involved in making that happen. Taking full advantage of new hardware while gracefully handling older machines is a constant challenge.
Working at Sketch means being part of a distributed team, building something together over the long term, while benefiting from the flexibility of working at home and controlling your own environment.