Senior Software Engineer

GridPoint, Inc.
14 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior
Compensation
$ 190K

Job location

Remote

Tech stack

Agile Methodologies
Application Layers
ARM
Bluetooth
UClibc (C Standard Library)
C++
Program Optimization
Communications Protocols
Computer Engineering
Software Debugging
Device Drivers
Embedded Software
Ethernet
Firmware
FreeRTOS
Hardware Interface Design
Joint Test Action (IEEE Standards)
Python
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