C++ Developer 100% Remote
Top 3 Must-Have Hard Skills
Minimum 5+ years' experience with C/C++ development.
Minimum 5+ years' experience with systems programming.
Minimum 5+ years' experience working with a distributed team.
Typical Day in the Role
Purpose of the Team: The purpose of this team is to develop source code for the Windows operating system, support older Windows versions, and migrate existing test code into the new Windows test framework.
Key projects: This role will contribute to Windows source code development, cross-version product changes, and migration of test code into a newly built test framework used in Windows.
Candidate Requirements
Disqualifiers: Candidates with no experience working in C/C++ programming or systems programming will not be eligible for the role, as these are essential for the tasks.
Best vs. Average: The ideal resume would contain deep, demonstrated experience in C and C++ programming, especially within systems programming and prior experience collaborating within distributed teams.
Hard Skills Assessments
Expected Dates that Hard Skills Assessments will be scheduled: Assessments will begin once candidates are shortlisted, with first-round shortlisting delivered by January 5th, 2026.
Hard Skills Assessment Process: The assessment process will include a single interview round conducted via Microsoft Teams audio-only (cameras off), focusing on technical programming questions in C or C++.
Required Candidate Preparation: Candidates should have a strong understanding of C/C++ programming concepts and be prepared to walk through technical programming questions in these languages.
Summary:
The main function of a software engineer is to apply the principles of computer science and mathematical analysis to the design, development, testing, and evaluation of the software and systems that make computers work. A typical software engineer researches, designs, develops and tests operating systems-level software, compilers, and network distribution software for medical, industrial, military, communications, aerospace, business, scientific and general computing applications.
Job Responsibilities:
Review and approve the modification of existing databases and database management systems.
Instruct staff to write and code logical and physical database descriptions and specify identifiers of database to management system.
Direct database development and approve project scope and limitations.
Review project requests describing database user needs to estimate time and cost required to accomplish project.
Plan, coordinate, and implement security measures to safeguard information in computer files against accidental or unauthorized damage, modification or disclosure.
Approve, schedule, plan and supervise the installation and testing of new products and improvements to computer systems.
Develop standards and guidelines to guide the use and acquisition of software and to protect vulnerable information.
Skills:
Verbal and written communication skills, problem solving skills, customer service and interpersonal skills.
Expert ability to work independently and manage one's time.
Expert mentoring skills necessary to provide support and constructive performance feedback.
Expert knowledge of the full software development lifecycle: from business/systems analysis, through requirements gathering and functional specification authoring, to development, testing and delivery.
Expert ability to troubleshoot issues and make system changes as needed to resolve issue.
Expert knowledge of computer hardware and software.
Knowledge of computer development software as it relates to systems, such as SQL, VisualBasic, etc.
Education/Experience:
Bachelor's degree in computer science, software engineering or relevant field required.
10+ years' experience required