Remote Position

C++ Developer

🌍 Remote · United States 💼 Full-time

Description

We're hiring a C++ developer to work primarily on engraving within the MuseScore Studio team. This is hands-on, experienced independent contributor role with lots of autonomy. You'll take on ambiguous, complex problems and see them through from design to shipping and long-term maintenance.

MuseScore Studio is free, open-source software used by millions of musicians, students, and composers worldwide, so the code you write here has a lot of impact and is used by an active community of creators around the world.

Key responsibilities

  • You'll work on the layout and rendering engine that turns musical data into beautifully typeset, readable scores. It's one of the most interesting and rewarding problems in the product: the difference between a score that looks professionally published and one that just barely conveys the notes. The team is responsible for:
  • Domain model - representation of elements of music theory as objects in code (including parts)
  • Engraving - arrangement and drawing of objects on the canvas
  • Playback - generating events for a synthesizer from objects
  • Editing - changing objects and their relationships, taking into account the rules of musical theory
  • Infrastructure - read, write to file, import, export, API, commands.

Requirements

  • Significant professional experience as software developer, including modern C++ in a large, long-lived, performance-sensitive desktop codebase.
  • Experience owning solutions end to end, from design through delivery and maintenance, not just implementing tickets.
  • Committed to code quality, with good judgment for making solid architectural decisions.
  • Experience with OOP and domain model design.
  • Able to read and understand fairly complex sheet music, with a good understanding of music theory.
  • Solid communication and collaboration, comfortable working async across a distributed, global team.
  • AI coding-savvy, applying critical thinking to discern when it is the right tool for the job
  • Attention to detail: in engraving, small inconsistencies are immediately visible to the musicians who rely on the output.
  • An eye for visual design: you know what a beautiful score looks like and care about making that happen.

Desirable

  • Hands-on experience with MuseScore Studio or a competing notation/composition tool, as a user, arranger, or composer.
  • Experience with MIDI and synthesizers
  • Experience with asynchronous and multi-threaded code
  • Experience working with fonts, with freetype
  • Experience in rendering and OpenGL

Bonus Points

  • Experience working on engraving for a music composition software or publisher

Significant professional experience with modern C++ in a large, long-lived, performance-sensitive desktop codebase; ability to own solutions end-to-end; OOP and domain model design; music theory understanding; solid communication; AI coding-savvy; attention to detail.

Key Responsibilities

  • developing engraving engine
  • maintaining codebase
  • collaborating globally

Skills & Tools

C++, OpenGL, MIDI, freetype

Job Details

  • Category: Software Development
  • Seniority: Senior Level
  • Commitment: Full Time
  • Workplace: Remote — Europe
  • Languages: English

About Muse Group

A team of creatives and music lovers developing tools for musicians worldwide. — Industry: Information Technology

Apply Now →

More Open Positions

Explore similar remote opportunities