Senior C++ Software Engineer -Map Rendering

Garmin Ltd
Cary, NC, United States
1 day ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
5 years minimum
Compensation
$30,160.0 - $57,200.0
Working hours
Regular working hours
Job source

Tech stack

C++ (Programming Language) Program Optimization Profiling Software Quality Code Review Computer Programming Computer Engineering Data Systems Software Debugging Memory Management Performance Tuning DataOps
+14 more
Software Engineering System Programming Toolchain Data Processing Multithreading Real Time Systems Garmin Caching Reliability of Systems Information Technology Low Latency Hardware Acceleration C++14 Multiplatform

Job description

We are seeking a highly skilled Senior C++ Software Engineer to join our Cary, North Carolina location in our Map Rendering group. This team focuses on developing high-performance map rendering solutions for embedded devices. This role involves designing and implementing efficient rendering pipelines and data systems that operate within strict constraints on memory, power consumption, and processing resources.

The ideal candidate has deep expertise in modern C++, strong fundamentals in systems programming, and experience building performant, reliable software in constrained environments. Experience with graphics technologies and rendering techniques is highly desirable. This individual will collaborate closely with cross-functional teams to deliver scalable, efficient, and maintainable solutions that directly impact end-user experience.

Essential Functions

  • Design, implement, and optimize map rendering pipelines for embedded platforms with limited memory and compute resources
  • Develop high-performant C++ software with a focus on efficiency, correctness, and maintainability
  • Analyze and improve system performance, including CPU, memory usage, and power consumption
  • Architect and implement robust multithreaded systems, ensuring thread safety and optimal concurrency
  • Design and optimize caching strategies (e.g., tile caching, data locality improvements) to minimize latency and resource consumption
  • Collaborate with product, systems, and hardware teams to align software design with platform constraints
  • Debug and resolve complex issues across multiple layers (rendering, data handling, threading)
  • Contribute to code reviews, mentoring, and establishing engineering best practices
  • Drive continuous improvement in code quality, performance profiling, and system reliability

Requirements

  • Bachelor’s degree in Computer Science, Computer Engineering, or a related field AND 5 years of software development experience OR related combination
  • Strong proficiency in modern C++ (C++17 or later), including memory management and performance optimization
  • Solid understanding of multithreading and concurrency (e.g., synchronization primitives, lock-free techniques)
  • Experience developing software for embedded or resource-constrained systems
  • Strong problem-solving skills and ability to work effectively in complex technical domains, * Experience with graphics programming or rendering pipelines
  • Familiarity with map rendering concepts (e.g., tiling, vector/raster data, spatial indexing)
  • Experience optimizing software for power efficiency and low memory footprint
  • Knowledge of caching algorithms and data-oriented design techniques
  • Experience with performance profiling and optimization tools
  • Background in real-time systems or latency-sensitive applications
  • Experience working with hardware acceleration or GPU/embedded graphics stacks
  • Familiarity with cross-platform development and toolchains for embedded systems

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.jofdav.com

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

3:15 min

Reversing the caching model for artifact delivery

Thijs Feryn Thijs Feryn · WWC Europe 2026

1:19 min

Advancing autonomous driving capabilities with specialized software talent

Katrin Lehmann Katrin Lehmann +1 · Coffee With Developers

2:33 min

Maintaining prompt structures for prefix caching

Douglas Reiser Douglas Reiser · Europe 2026 Virtual

3:51 min

Technical skills and collaborative mindsets for mobility engineering roles

Georg Kühberger +1 · LIVE

4:04 min

Navigating technical career progression alongside native code generation

Simon Auer Simon Auer · WWC Europe 2026

2:19 min

Protecting origin servers using reverse caching proxies

Thijs Feryn Thijs Feryn · WWC 2025

Videos

See all

Related articles

See all