Senior Software Engineer
Ascent, LLC
Ann Arbor, MI, United States
4 days ago
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Apply on www.careerbuilder.com
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
2 years minimum
Working hours
Regular working hours
Job source
Tech stack
C (Programming Language)
JIRA
Automation of Tests
C++ (Programming Language)
CMake
Static Program Analysis
Profiling
Software Quality
Code Review
Computer Engineering
Continuous Integration
Data Structures
+24 more
Software Debugging
Software Design Patterns
Linux
Memory Management
Python (Programming Language)
Linux System Administration
MISRA C (C Programming Language)
Object-Oriented Software Development
Performance Tuning
Regression Testing
Memory Leaks
Requirements Traceability
Server Administration
Software Engineering
Software Troubleshooting
Jama Connect
Git
System-level Testing
Git Flow
Information Technology
Production Code
Software Coding
C++14
Jenkins
Job description
- 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.
Requirements
Software Engineering, Software Engineering, C Programming Language, C++ Programming Language, Quality Management, Testing, Team Player, Debugging Skills, Software Administration, Software Design, * 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 (GoogleTest, 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.
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Apply on www.careerbuilder.com
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Good distractions
Loading talks and stories from around this role…