Senior macOS Developer


Posted 3 days ago

Apply for this job

⚠️ Europe only. Your application will be automatically rejected otherwise

We're looking for a Mac Developer to join our international remote team. You’ll be working on the popular Git client Tower that is actively used by thousands of great customers like Apple, Slack, Coinbase and Stripe on a daily basis. Your code matters!

About You

We are very passionate about our culture and values. Personal traits matter more to us than technical skills.

  • Very reliable & thorough: you accept responsibility for your own work and its quality
  • Hungry to be part of a team that creates things that matter
  • Self-motivated and capable of working remotely
  • Open to discussions and a mindful communicator
  • Willing to be part of a team & yet able to work independently
  • Paying attention to details
  • Open-minded and respectful – regarding people, technologies and projects
  • Happy to become part of a small, international team of friendly & skilled professionals

Skills & Requirements

We are also very passionate about our product and about providing the best experience on each platform. You love the Mac platform and its native frameworks. You like to craft user interfaces and bring them to life.

  • 5+ years professional Objective-C and/or Swift development experience
  • Extensive experience with Cocoa frameworks
  • Proven track record working on larger professional software projects
  • Ability to review code and write unit tests
  • Deliver high quality software in a collaborative team environment
  • Attention to great design & user experience
  • A deep dedication to deliver a true Mac experience
  • Stay on top of Apple technologies

Work Environment

In your first weeks, you will learn the code base and our workflows within the team and organization by working on more isolated and smaller features.

After this time, your work will involve the following topics:

  • Tower Application: Tower is written in Swift/Objective-C and is using a mature, modular and stable MVC architecture. Tower uses a strict asynchronous data model to be as performant as possible. New code is written in Swift, slowly replacing Objective-C with Swift.
  • Git SCM: The heart of Tower is based on the Git SCM. We constantly try to improve Tower beyond basic Git workflows. For example, we introduced a true “Undo” functionality to Tower using Git calls. Learn the inner workings of Git to create new features that help users to be more productive.
  • Git Services: Improve and extend our integration with Git services like GitHub, GitLab, Bitbucket, etc. Learn how to use their APIs to integrate them into Tower, e.g. for listing and managing Pull Requests.
  • Team Work: Collaboratively plan and develop features for releases with your teammates using GitHub milestones, issues and code reviews. Attend weekly check-ins with the Tower Mac team to discuss progress, problems and next steps.
  • Unit Tests: Writing unit tests is an essential part of ensuring Tower's stability for existing and new features. We use CI to automatically run tests of frameworks and the main Tower app upon push.
  • Maintenance: No code is perfect. There will always be bugs to fix and you will have time to work on refactorings to improve code quality which is important for any long running project.
  • Technical Support: Respond to technical questions from our support team in an alternating weekly model with your teammates.

You'll work closely with your colleagues in marketing and support — and be part of a friendly, open, and reliable team of professionals.

About Tower

We are a small, fully remote team spread across Germany, Finland, Latvia, Portugal and Spain. Founded in 2010, we set out to make Git’s powerful feature set accessible to developers, designers, and non-technical people.

Today, our software Tower is the best Git client for Mac and Windows and is used by over 100,000 customers - from startups to Fortune 100 companies.

We know we can achieve great goals only with the help of our peers. And at Tower, we are blessed to work in a team of extraordinary people. We’re not looking for someone to do the job. We’re looking for someone to join the team.

Apply for this job

⚠️ Europe only. Your application will be automatically rejected otherwise

A Better Way to Work With Git

Our Working week

We are open to a 4 day week for 80% salary

  • Mon
  • Tue
  • Wed
  • Thu
  • 🏖️

Our Vacation Policy

We have an unlimited vacation policy. Employees must take a minimum of 25 days per year (or 20 for those on a 4 day week), plus public holidays

  • 26 days PTO
  • 52 unpaid Fridays
  • 78 days off per year

We work 100% remotely

Our team works 100% remotely with at least in-person meeting every quarter (in Frankfurt or Berlin). We also have company retreats in places such as Corsica or Barcelona.

  • Frankfurt
  • Berlin
  • Halle- Neustadt
  • Barcelona
  • Lisbon
  • Helsinki
  • Riga

Our Benefits

  • Flexible working hours
  • Company retreats
  • Equipment allowance

Report incorrect data

Let us know if the job has expired