![C++](https://assets.toptal.io/images?url=https%3A%2F%2Fbs-uploads.toptal.io%2Fblackfish-uploads%2Fcomponents%2Fskill_page%2Fcontent%2Flogo_file%2Flogo%2F1318266%2Fc_plus_plus-090fe12eb7e9a76d3d89c7472d21b03d.png&width=320)
C++ Developer Job Description Template
C++ is a general purpose, multi-paradigm programming language. C++ developers often work on both desktop and mobile applications, as well as software that interacts with low-level system and hardware resources. Developers can use C++ to build native modules and applications for a number of platforms, such as Android using Android NDK. C++, being a difficult language to master, requires a developer to spend much time with it.
Trusted by leading brands and startups
C++ is a general purpose, multi-paradigm programming language. C++ developers often work on both desktop and mobile applications, as well as software that interacts with low-level system and hardware resources. Developers can use C++ to build native modules and applications for a number of platforms, such as Android using Android NDK. C++, being a difficult language to master, requires a developer to spend much time with it.
Writing a good job description and job advertisement for a C++ developer requires an emphasis to be placed on the specific technologies necessary for the project. When you are looking for an advanced C++ developer to fill a specific niche, posting a generic C++ developer description in your job ad will bring numerous applications from people who are unfamiliar with the required technologies or have very limited knowledge of the language as a whole.
This article will provide you with a sample C++ developer job description that will help you write the perfect job ad, and assure that you easily find and hire the person that matches your specific criteria.
C++ Developer - Job Description and Ad Template
Copy this template, and modify it as your own:
Company Introduction
{{Write a short and catchy paragraph about your company. Make sure to provide information about the company culture, perks, and benefits. Mention office hours, remote working possibilities, and everything else you think makes your company interesting.}}
Job Description
We are looking for a C++ developer responsible for building applications that may range from desktop applications to native mobile applications and embedded systems. Your primary responsibility will be to design and develop these applications, and to coordinate with the rest of the team working on different layers of the infrastructure.
Responsibilities
- Design, build, and maintain efficient, reusable, and reliable C++ code
- Implement performance and quality modules
- Identify bottlenecks and bugs, and devise solutions to these problems
- Help maintain code quality, organization, and automatization
- {{Add other responsibilities here that are relevant}}
Skills
- Strong proficiency in C++, with fair knowledge of the language specification
- Thorough knowledge of the standard library, STL containers, and algorithms
- {{Specify any platform(s) that you want the developer to have a strong grasp of}}
- Good understanding of memory management in non-garbage collected environments
- Understanding of dynamic polymorphism and C++ specific notions, such as friend classes
- Familiarity with templating in C++
- Knowledge of the latest C++11 standard is appreciated {{depending on project specifications}}
- Familiarity with embedded systems design, low-level hardware interactions {{if required}}
- Knowledge of low-level threading primitives and real-time environments {{depending on project requirements}}
- Familiarity with system call wrapper library functions
- Knowledge of writing native modules for high-level languages such as Node.js, Python, Go, etc. {{if required}}
- Familiarity with language tools, such as Valgrind {{if required}}
- Knowledge of component data sheets and specifications
- Implementation of automated testing platforms and unit tests
- Proficient understanding of code versioning tools {{such as Git, SVN, and Mercurial}}
- Familiarity with continuous integration
- {{Make sure to mention other frameworks, libraries, or any other technology relevant to your project}}
- {{List education level or certification you require}}
Recent C++ Articles by Toptal Engineers
How to Hire a Great C++ Developer
C++ is a powerful general purpose multi-paradigm programming language. The language's immense set of features, its overall complexity, lack of elegant external tooling that other popular languages have, and access to low-level resources makes this one of the most difficult programming languages to master. Taming this mammoth beast requires much experience and wisdom.
Read Hiring GuideFind the right C++ interview questions
Read a list of great community-driven C++ interview questions.
Read them, comment on them, or even contribute your own.
Hire a Top C++ Developer Now
Toptal is a marketplace for top C++ developers, engineers, programmers, coders, architects, and consultants. Top companies and startups can hire dedicated (full-time), hourly, or part-time C++ freelancers for their mission-critical software projects.
See Their ProfilesJulie Wetherbee
Julie has over 20 years of experience building software applications and leading engineering teams for businesses of all sizes. She has expertise in Java, JavaScript, C, C++, and Perl, and is familiar with many popular frameworks. Recently, Julie designed and implemented a large-scale Oracle database sharding solution for Walmart.com.
Show MoreBrady Pomerleau
Brady has three years of experience as a Software Engineer. His experience is predominantly in embedded firmware in C/C++. He also has significant experience with CICD, GitLab, Docker and scripting for test automation and Python. Brady has some experience with networking with Cisco, Type I Hypervisors and full-stack development in Apache, Flask, Go, Bootstrap.
Show MoreMike Hutton
Mike is a software architect and developer with over 25 years of experience developing large-scale mission-critical systems. He currently specializes in Java and J2EE development, C++ and C development, and embedded systems for the IoT. Also, he is an internationally recognized expert in the area of lottery gaming systems. Mike has been delivering solutions employing geographically diverse teams for the past 16 years.
Show MoreNick Aversano
Nick has been programming for more than a decade. His expertise includes React front ends, Node.js back ends, C++, games, graphics, and numerous programming languages. After starting his technology career because he wanted to make games, he has since expanded into new areas. Well-known clients include LinkedIn and Harley-Davidson. Nick loves to continuously learn new things, grow, and improve.
Show MoreTed Middleton
Ted is a software developer and programmer with 20 years of professional programming experience and close to 25 years of experience programming in C and C++ and almost as long in Python. He enjoys finding clean solutions and producing high-quality, high-value code. Ted also excels at porting and building maintainable cross-platform software and is skilled as a runtime-performance optimizer. In short, the software that Ted writes just works.
Show MoreFrancisco Tortosa
Francisco is a tech enthusiast and developer with 20+ years of experience in embedded software, hardware design, firmware, and software in general. His expertise includes a range of languages (C++, Assembly, and C), tools (Altium Designer), and libraries/APIs (wxWidgets, STM32Cube). He’s developed microcontroller units for the industrial and automotive fields. Francisco also has delivered several projects as a freelance developer and knows how to work effectively within an international team.
Show MoreJakiša Tomić
Jakiša has over 15 years of experience developing various types of apps for a range of operating systems. Most of his technical expertise is in C++ development, but he's also comfortable working with JavaScript, C#, and Java. As for environments, he knows the ins and outs of working with the Windows API, embedded programming, and distributed systems. He has a working knowledge of Linux/Unix systems, macOS, and mobile platforms like Android and iOS.
Show MoreAbhimanyu Veer Aditya
Abhimanyu is a machine learning expert with 15 years of experience creating predictive solutions for business and scientific applications. He’s a cross-functional technology leader, experienced in building teams and working with C-level executives. Abhimanyu has a proven technical background in computer science and software engineering with expertise in high-performance computing, big data, algorithms, databases, and distributed systems.
Show MoreGeorge Cristea
George is a performance-oriented engineering leader with a substantial technology background and business proficiency. He specializes in designing and implementing large-scale distributed systems with a focus on performance and reliability. Throughout his career, George has consistently identified and managed the technology and operational risks with a strong sense of end-to-end ownership for complex software products.
Show MoreDarien Pardinas Diaz
Darien is an accomplished software engineer with expertise in image processing, desktop application, and systems development. He worked as a research engineer in the early stages of his career, writing tools to acquire and process large volumes of scientific data. Later, he started working in the development of FDA compliant software for medical devices. Recently, he's been writing application software for a 3D printing company.
Show MoreRicardo Costa
A professional developer for over 13 years, Ricardo focuses on game development, computer graphics, including rendering, computer vision, and VR/AR, artificial intelligence, and client-server systems. He is also an Unreal Engine expert with eight years of experience. Ricardo is passionate about cutting-edge technology, optimizing complex systems, and creating real-time, high-performance software.
Show MoreSign up now to see more profiles.
Start HiringToptal Connects the Top 3% of Freelance Talent All Over The World.
Join the Toptal community.