Senior Software Engineer

GridPoint, Inc.
United States
about 1 month ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
3 years minimum
Compensation
$145,000.0 - $190,000.0
Working hours
Regular working hours
Job source

Tech stack

Agile Methodology Application Layers ARM Architecture Bluetooth UClibc (C Standard Library) C++ (Programming Language) Program Optimization Communications Protocols Computer Engineering Software Debugging Device Drivers Embedded Software
+23 more
Ethernet Firmware FreeRTOS Hardware Interface Design Joint Test Action (IEEE Standards) Python (Programming Language) Modbus Message Queuing Telemetry Transport (MQTT) Real-Time Operating Systems LoRaWaN Systems Architecture System Testing TCP/IP Universal Asynchronous Receiver/Transmitter Wi-Fi Technology Erlang Serial Peripheral Interface PIC Microcontroller Git Information Technology Wireless Technologies Software Version Control Elixir

Job description

The Senior Software Engineer will design and develop embedded firmware for the GridPoint Energy Management Platform, working across base firmware, application firmware, and supporting tooling. This role pairs deep embedded C/C++ development with the breadth to integrate devices across the wireless and cloud layers of the IoT stack. Working alongside hardware, firmware, and QA engineers, the Senior Software Engineer is responsible for architecting, developing, testing, and delivering quality firmware for microcontroller-based products built on platforms such as Microchip and STMicro. These products provide the foundational telemetry and controls that optimize our customers’ energy profile. The scope covers both new product introduction (NPI) and sustaining of existing products., Firmware Development & Design

  • Design and implement efficient, reliable firmware for microcontroller-based IoT devices

  • Develop real-time embedded software in C/C++ for resource-constrained environments

  • Create and maintain device drivers for sensors, actuators, and communication modules

  • Implement power management strategies for battery-operated devices

  • Optimize code for memory usage, performance, and power consumption

  • Develop firmware for new product introduction (NPI) as well as sustaining of legacy products

Platform & Integration

  • Integrate device data into cloud and application layers via MQTT, HTTP/HTTPS, or similar protocols

  • Develop and maintain device management, OTA firmware update, and telemetry pipelines

  • Collaborate with application and cloud engineers on protocol design, data modeling, and interface contracts between embedded and platform layers

  • Contribute to wired and wireless platform architecture decisions

Test, Debug & Engineering Excellence

  • Create comprehensive test plans and perform unit, integration, and system testing

  • Debug firmware issues using oscilloscopes, logic analyzers, and JTAG/SWD debuggers

  • Conduct performance analysis and optimization of embedded systems

  • Define and document interfaces, protocol specifications, and test plans

  • Collaborate with hardware engineers on system architecture and component selection

Requirements

  • Bachelor’s degree in Electrical Engineering, Computer Engineering, Computer Science, or related field

  • 5+ years of experience in embedded firmware development

  • 3+ years of hands-on IoT systems development and debugging experience

  • Proficiency in C/C++ for embedded systems and Python for tooling

  • Experience with ARM Cortex-M, STM32, Microchip, or similar microcontroller platforms

  • Experience with hardware interfaces: Ethernet, USB, SPI, I2C, UART, RS-485

  • Proficiency with version control (Git) and collaborative development workflows

  • Experience with an RTOS (FreeRTOS, Zephyr, or similar)

  • Experience developing and maintaining embedded Linux systems using Buildroot

  • Debugging tools: JTAG, SWD, oscilloscope, logic analyzer, Joulescope

  • Familiarity with Agile development methodologies

Preferred

  • Communication protocols: TCP/IP, MQTT, CoAP, HTTP/HTTPS, Modbus

  • Wireless technologies: Wi-Fi, Bluetooth/BLE, LoRa/LoRaWAN, cellular

  • Embedded GUI development: LVGL, TouchGFX, or similar

  • USB composite device experience

  • Experience with the Erlang BEAM, Embedded Elixir & Nerves

  • Experience with energy management or building automation systems

Benefits & conditions

Annual Salary Range: $145,000 to $190,000

About the company

GridPoint is a rapidly growing, private equity backed technology leader with a mission to accelerate the world’s transition to a sustainable future by creating an intelligent energy network of grid-interactive buildings. Our technology platform harnesses the power and potential within a building to deliver energy, operational, and resiliency benefits - spanning Fortune 500 enterprises, utilities, government organizations, and small businesses.

Apply for this position

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

Apply on www.indeed.com

Good distractions

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

2:26 min

Managing remote devices with Elixir and Ansible

Phil Helliwell · WWC 2023

8:07 min

Transitioning from web development to constrained hardware engineering

Philipp-Alexander Blum · LIVE

1:52 min

Historical concurrency models from actors to sequential processes

Frank Müller · WWC 2021

6:21 min

Investigating push inefficiencies with upstream Git experts

Jonathan Creamer · Coffee With Developers

2:08 min

Professional background and early cross-platform mobile experiences

Petar Marijanović · LIVE

56 sec

Favorite git commands and the importance of patch commits

Eileen Uchitelle Eileen Uchitelle +1 · Coffee With Developers

Videos

See all

Related articles

See all