This website uses cookies to ensure you get the best experience.
OK
C++ Developer (Qt)— Audacity

Muse Group is seeking a strong C++ developer, with Qt experience, to assist with a challenging initiative to re-architect and modernize Audacity.

Audacity, a new part of our family of products, is a free and open-source digital audio editor and recording application. Available for Windows, macOS, Linux, and other Unix-like operating systems, it is the world’s most popular audio editing software, with over 111 million downloads from FossHub since March 2015. It is now implemented with the wxWidgets cross-platform user interface toolkit, but Audacity would be better based on Qt, a technology that offers a more modern look-and-feel, runs on more operating systems, and assists more rapid development.

The migration from wxWidgets to Qt, while preserving all of the program's capabilities, and improving the separation of application core and user interface layers, is a large challenge.

You are a programmer with competence in Qt, who enjoys the expressiveness of modern C++. But more importantly, you have an understanding of good large scale program structure.

You will not merely add features. You will collaborate with software architects.

You will exchange code reviews with all other developers on the team to build a broad understanding of the application. You may also assist with development of in-program features for automated functional testing.


Requirements:

  • Proficient in modern C++ language and libraries (at least C++11, and preferably C++17), and curious about the newer language standards
  • Understanding of SOLID principles and software construction patterns
  • Experience in designing or refactoring complex systems
  • Familiar with source control in git, and collaboration via GitHub
  • At least three years of experience working with cross-platform desktop applications using wxWidgets or Qt
  • English-Intermediate or higher

Would be a plus:

  • Understanding of concurrent programming in modern C++ (threads, atomics)
  • Knowledge of C++ unit testing frameworks, such as catch
  • A degree in mathematics, physics, computer science, or similar
  • Experience using sound editing and visualization software
  • Contribution to open source projects on GitHub
Submit your application
Full name
E-mail
Phone
Additional information
CV or Portfolio
By clicking Submit application, you agree to our Applicant Privacy Policy