1

Embedded Software Engineer Jobs in Bakersfield, CA

Embedded Software Engineer information

See Bakersfield, CA salary details

$72.4K

$158.6K

$179.9K

How much do embedded software engineer jobs pay per year?

As of Aug 30, 2026, the average yearly pay for embedded software engineer in Bakersfield, CA is $158,626.00, according to ZipRecruiter salary data. Most workers in this role earn between $136,000.00 and $178,900.00 per year, depending on experience, location, and employer.

What is an embedded software engineer?

Embedded Software Engineers are professionals who design, develop, and maintain software that runs on embedded systems—specialized computing devices that are part of larger systems, such as cars, medical devices, industrial machines, and consumer electronics. Their work involves programming in languages like C or C++ to interact closely with hardware components, ensuring optimal performance, reliability, and safety. Embedded Software Engineers work closely with hardware engineers to integrate and test software with physical devices, often working within real-time and resource-constrained environments. Their expertise is crucial in developing the 'brains' of many devices we use every day.

What are the key skills and qualifications needed to thrive as an embedded software engineer?

To thrive as an Embedded Software Engineer, you need a solid background in computer science or electrical engineering, strong programming skills in C/C++, and experience with embedded systems design. Familiarity with real-time operating systems (RTOS), microcontroller architectures, debugging tools, and version control systems like Git is typically required. Excellent problem-solving abilities, attention to detail, and effective communication skills set top engineers apart. These competencies are crucial for building reliable, efficient, and safe embedded solutions that meet industry standards.

How does an embedded software engineer typically collaborate with hardware engineers during product development?

Embedded Software Engineers work closely with hardware engineers throughout the product development lifecycle. Collaboration often involves joint design reviews, debugging sessions, and integration testing to ensure software and hardware function seamlessly together. Effective communication is crucial, as changes in hardware can impact software functionality and vice versa. This cross-disciplinary teamwork helps resolve technical issues quickly and ensures the end product meets performance and reliability standards.

What is the difference between Embedded Software Engineer vs Firmware Engineer?

AspectEmbedded Software EngineerFirmware Engineer
CredentialsBachelor's in Computer Engineering, Electrical Engineering, or related fields; often requires knowledge of C/C++Similar credentials; strong C/C++ skills, understanding of hardware
Work EnvironmentDevelops software for embedded systems in various industries like automotive, IoT, consumer electronicsFocuses on low-level hardware interaction, often working closely with hardware teams
Industry UsageCommon in automotive, medical devices, consumer electronics, industrial automationPrimarily in consumer electronics, IoT devices, and hardware startups

Embedded Software Engineers design and develop software for embedded systems, focusing on system-level programming. Firmware Engineers write low-level code that directly interacts with hardware components. While both roles require similar skills and work environments, Embedded Software Engineers often work on a broader range of software, whereas Firmware Engineers focus on hardware-specific code. Understanding these differences helps in choosing the right career path or job search focus.

Are embedded software engineers in demand?

Embedded software engineers are in high demand due to the growth of IoT, automotive, medical devices, and consumer electronics industries. They often require skills in C, C++, and real-time operating systems, with job opportunities increasing globally as embedded systems become more integral to technology development.

What job categories do people searching Embedded Software Engineer jobs in Bakersfield, CA look for?

The top searched job categories for Embedded Software Engineer jobs in Bakersfield, CA are:

What cities near Bakersfield, CA are hiring for Embedded Software Engineer jobs?

Cities near Bakersfield, CA with the most Embedded Software Engineer job openings:

Infographic showing various Embedded Software Engineer job openings in Bakersfield, CA as of August 2026, with employment types broken down into 1% As Needed, 84% Full Time, 10% Part Time, and 5% Contract. Highlights an 89% Physical, 3% Hybrid, and 8% Remote job distribution, with an average salary of $158,626 per year, or $76.3 per hour.

[Remote in US] AI Kernel Engineer - RISC-V Software Stack

Mentium Technologies Inc.

Bakersfield, CA • On-site

Other

Medical, Dental, Vision, Retirement, PTO

This job post has expired today. Applications are no longer accepted.


Job description

Overview

Mentium Technologies Inc. is seeking an Embedded Software Engineer to develop and optimize high-performance compute software for our custom RISC-V-based vision AI accelerator.

You will work at the intersection of embedded systems, computer architecture, and machine learning, developing high-performance compute kernels, runtime components, libraries, and developer-facing SDK tools. A key part of the role will be efficiently mapping compute-intensive workloads such as convolution, matrix multiplication, and signal-processing operations onto a multicore RISC-V SoC.

The role focuses heavily on vector/SIMD execution, memory optimization, data movement, multicore parallelism, and low-level performance optimization.

Prior RISC-V experience is valuable but not required. Engineers with backgrounds in ARM NEON/SVE, x86 SIMD/AVX, DSP software, GPU kernel programming, embedded performance optimization, or other low-level parallel architectures are encouraged to apply.

You will collaborate closely with RTL design, system architecture, software, and machine learning teams to turn architectural capabilities into a practical, high-performance, and extensible software platform.


Key Responsibilities

  • Develop and optimize high-performance ML and DSP compute kernels, including operations such as convolution, matrix multiplication, activation functions, pooling, image-processing primitives, and related numerical workloads
  • Optimize computationally intensive C/C++ code for vector/SIMD execution, multicore processing, and the SoC memory hierarchy
  • Build reusable compute libraries, runtime components, APIs, and developer-facing components for the Mentium SDK
  • Develop efficient data-movement, memory-management, and workload-scheduling strategies
  • Optimize the use of caches, scratchpad memories, DMA engines, and on-chip memory resources
  • Profile workloads and identify compute, memory-bandwidth, synchronization, and system-level performance bottlenecks
  • Perform low-level performance analysis using profiling, benchmarking, cycle measurements, and hardware/software debugging tools
  • Integrate optimized compute kernels and runtime components into AI model deployment and inference workflows
  • Develop functional tests, performance benchmarks, reference examples, and SDK documentation
  • Collaborate closely with RTL and system-architecture engineers to validate hardware features and improve end-to-end system performance
  • Contribute to the architecture and programming model of Mentium's RISC-V accelerator software stack
  • Evaluate and adapt relevant open-source libraries, runtimes, compiler technologies, and numerical software
  • Help define software requirements and provide feedback that influences future hardware architecture


Required Qualifications

  • Bachelor's degree in Electrical Engineering, Computer Engineering, Computer Science, or a related technical field, or equivalent practical experience
  • 3+ years of combined relevant industry, graduate research, doctoral research, or applied research experience
  • Strong programming skills in C and/or C++
  • Experience developing or optimizing performance-critical software
  • Experience with at least one area of low-level performance programming, such as:
  • SIMD or vector programming
  • DSP programming
  • GPU kernel programming
  • Assembly or intrinsic-based optimization
  • Performance-critical embedded software
  • Numerical or high-performance computing
  • Solid understanding of computer architecture, memory systems, and parallel processing
  • Experience with performance profiling, benchmarking, low-level debugging, or cycle-level optimization
  • Familiarity with computational workloads such as convolution, matrix multiplication, image processing, signal processing, or other numerical kernels
  • Ability to reason about memory access patterns, data locality, computational efficiency, and hardware utilization
  • Ability to read hardware specifications and work effectively with hardware and RTL engineers
  • Proficiency with Python for testing, automation, benchmarking, tooling, or application development
  • Experience with Git and standard collaborative software-development practices
  • Strong written and verbal communication skills


Preferred Qualifications

Experience in several of the following areas is valuable, but we do not expect candidates to have experience with all of them:

  • RISC-V instruction-set architecture or the RISC-V Vector Extension (RVV)
  • ARM NEON or SVE, x86 SSE/AVX, DSP vector architectures, GPUs, or other SIMD/vector processors
  • Vector intrinsics, assembly programming, compiler intrinsics, or low-level code optimization
  • DSP, image-processing, numerical-computing, or machine-learning kernel development
  • Quantized inference, fixed-point arithmetic, INT8/INT16 computation, FP16/BF16, or other reduced-precision numerical formats
  • DMA, scratchpad memory, cache hierarchies, memory bandwidth optimization, and multicore synchronization
  • Embedded, bare-metal, real-time, or resource-constrained software development
  • Multicore SoCs or heterogeneous compute architectures
  • Open-source RISC-V platforms such as PULP or similar multicore/accelerator systems
  • Machine-learning frameworks and model formats such as PyTorch, TensorFlow, TFLite, or ONNX
  • Compiler and deployment technologies such as LLVM, MLIR, TVM, Deeploy, or related systems
  • SDKs, runtime libraries, numerical libraries, developer tools, or reusable software APIs
  • Hardware-software co-design, SoC development, FPGA prototyping, architectural simulation, or custom accelerator development
  • Open-source software or research software development


Why Join Mentium?

At Mentium, you will work at the intersection of custom silicon, RISC-V, high-performance embedded software, and AI.

You will work directly with the engineers designing the underlying hardware and play a central role in determining how developers and machine-learning workloads interact with our accelerator.

Rather than simply programming an existing processor, you will have the opportunity to influence the hardware-software boundary: identifying architectural bottlenecks, developing optimized compute kernels, evaluating new programming approaches, and providing feedback that can shape future generations of the hardware.

Benefits:

  • Competitive compensation packages
  • Opportunity to work on diverse, cutting-edge AI projects across a range of industries.
  • 401(k)
  • Flexible PTO
  • Full PPO medical, dental, and vision insurance coverage