Skip to main content
Tallo logoTallo logo

Find Jobs

Find Jobs Near You – Available Work in Your Location

Skip to job details

Back to Results

Apply for this opportunity

To apply for this job, you'll continue to an external website or email application.

Opulent Global Technologies Inc.

Embedded Engineer

Review key factors to help you decide if the role fits your goals.
Pay Growth
?
out of 5
Not enough data
Not enough info to score pay or growth
Job Security
?
out of 5
Not enough data
Calculating job security score...
Total Score
85
out of 100
Average of individual scores

Were these scores useful?

Job Description

Role
  • Embedded Software Engineer Location:
    Lake Forest, CA
  • On-site Contract
  • 12+ months
Job Description :
Responsibilities
  • Design, develop, and maintain C/C++ software for RTOS, Real-Time Linux, and Linux-based embedded controllers for real-time sensing, communication, monitoring, and device control.
  • Develop multi-threaded and real-time applications, including task scheduling, interrupts, synchronization, IPC, timers, state machines, watchdogs, and fault handling.
  • Develop and integrate low-level hardware interfaces and communication protocols including
GPIO, UART, SPI, I
²C, CAN/CAN-FD, Ethernet, TCP/IP, and UDP.
  • Develop and debug device drivers, BSP/HAL components, and hardware/software interfaces.
  • Perform system-level debugging and performance analysis, including latency, jitter, CPU/memory utilization, and communication performance.
  • Support networking and application interfaces including REST, MQTT, gRPC/Protobuf, and related technologies.
  • Develop Python tools for test automation, diagnostics, data collection, and hardware validation.
  • Participate in architecture/design reviews, code reviews, testing, integration, and system validation. Required Qualifications
  • BS/MS in Computer Engineering, Electrical Engineering, Computer Science, or related field, with 5+ years of embedded/real-time software development experience.
  • Strong proficiency in C/C++ and working proficiency in Python.
  • Strong foundation in computer organization and architecture, including Von Neumann/Harvard architectures, CPU operation, registers, instruction execution, buses, and memory-mapped I/O.
  • Strong understanding of memory architecture, including cache, SRAM/DRAM/Flash, stack/heap, virtual/physical memory, DMA, and memory management.
  • Strong knowledge of Real-Time Operating Systems, including tasks/threads, scheduling, priorities, context switching, mutexes/semaphores, queues, synchronization, priority inversion, latency, jitter, and deterministic execution.
  • Strong understanding of hardware/software interrupts, ISRs, interrupt priorities, exceptions, interrupt latency, and interrupt-to-task interaction.
  • Hands-on experience with embedded controllers/microprocessors/SoCs and hardware interfaces such as
GPIO, UART, SPI, I
²C, CAN/CAN-FD, ADC/DAC, and Ethernet.
  • Experience with Embedded/Real-Time Linux, multithreading, IPC, sockets, device interfaces, and user-space/kernel-space concepts.
  • Ability to read schematics, datasheets, register maps, memory maps, and timing diagrams and debug hardware/software interactions.