More jobs:
Senior Software Engineer
Job in
Ann Arbor, Washtenaw County, Michigan, 48113, USA
Listed on 2026-10-05
Listing for:
Ascentt
Full Time
position Listed on 2026-10-05
Job specializations:
-
Software Development
C++ Developer, Software Engineer, Software Testing
Job Description & How to Apply Below
Ascentt is building cutting-edge data analytics & AI/ML solutions for global automotive and manufacturing leaders. We turn enterprise data into real-time decisions using advanced machine learning and GenAI. Our team solves hard engineering problems at scale, with real-world industry impact. We’re hiring passionate builders to shape the future of industrial intelligence.
Employment type:
Full-Time / Contract
About the Job:
- We are seeking a C, C++ Software Engineer with strong hands-on experience designing, building and maintaining high-quality, performant software in C and C++.
- The engineer owns features end to end — from requirements and design through implementation, testing, debugging and release — as part of a collaborative engineering team.
What you will do:
- Design, develop and maintain production quality software in C and C++ (C++11/14/17 or later).
- Translate functional and technical requirements into clean software designs and well-structured code.
- Apply object-oriented design, design patterns and the STL to build modular, reusable and maintainable components.
- Write efficient, reliable code with careful attention to memory management, pointers, multithreading and performance.
- Develop and debug in Linux based environments using GCC/Clang, GDB and Make/CMake.
- Develop and execute unit, integration and regression tests to ensure software quality.
- Profile, troubleshoot and root cause defects using debuggers, logs and analysis tools such as Valgrind, sanitizers and static analysis.
- Maintain software design documentation and requirements traceability in Jama Connect or comparable tools.
- Contribute to code reviews, coding standards, static analysis and CI/CD automation using Git, Jenkins and Python.
- Collaborate with fellow developers, QA, product and project stakeholders to deliver on schedule.
This is a hands‑on C/C++ development role. Candidates must be able to walk through C/C++ code they personally wrote — design choices, trade-offs and how they debugged it.
What we are looking for:
- Bachelor's degree in Computer Engineering, Computer Science or a related field with 4+ years of relevant experience, or a Master's with 2+ years.
- Strong hands‑on software development in C and C++, including memory management, pointers, data structures and algorithms.
- Experience developing and debugging in Linux-based environments (GCC/Clang, GDB, Make/CMake).
- Solid understanding of object-oriented design, design patterns and the C++ Standard Library (STL).
- Experience with multithreading, concurrency and performance optimization.
- Experience developing and executing unit, integration, regression and system‑level tests.
- Experience with software design documentation and requirements traceability (Jama Connect or comparable tools).
- Experience with Git‑based workflows and Jira.
- Strong troubleshooting, root‑cause analysis, documentation and communication skills.
Preferred Qualifications:
- Experience with modern C++ (C++17/20) and Boost.
- Experience with unit-testing frameworks (Google Test, Catch2) and debugging/profiling tools (GDB, Valgrind, sanitizers).
- Familiarity with coding standards and static analysis (MISRA C/C++, CERT, clang-tidy, Coverity).
- Experience with Python, Jenkins, CI/CD pipelines and automated testing.
Position Requirements
10+ Years
work experience
To View & Apply for jobs on this site that accept applications from your location or country, tap the button below to make a Search.
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
Search for further Jobs Here:
×