Golang Software Engineer

Greene Resources

Apex (NC)

Hybrid

USD 100,000 - 120,000

Full time

3 days ago
Be an early applicant
Application generator

Turn this role into an interview — a resume and cover letter built around what this employer wants.

Get past ATS filters

Job summary

Greene Resources is seeking a Golang Software Engineer in Apex, NC. This hybrid, full-time role focuses on building and maintaining Go services for a connected control platform, integrating a Go-based middleware and gRPC API layer.

You will work across core codebases and collaborate with a senior engineering team to deliver scalable, well-architected solutions. The ideal candidate has 3+ years of production Go experience, proficiency with gRPC/Protobuf, and strong API design instincts, plus

Qualifications

  • 3+ years of professional Go experience in production systems.
  • Experience with gRPC and Protocol Buffers, including schema design and code generation.
  • Familiarity with Google AIP standards and well-structured API contracts.
  • Experience with device communication protocols and transport abstractions (serial/TCP).

Responsibilities

  • Design, build, and maintain Go services for device orchestration and hardware transport abstraction.
  • Contribute to embedded middleware coordinating hardware communication in real time.
  • Extend shared gRPC API contracts and ensure multi-language consumer compatibility.
  • Build protocol-bridging services between legacy JSON protocols and modern gRPC APIs.
  • Follow API design conventions (AIP) when modifying services and messages.
  • Write unit, integration, and conformance tests; leverage GitHub Workflows for CI.
  • Participate in code/design reviews and document architectural decisions.

Skills

Go/Golang
gRPC
Protocol Buffers
API design
Concurrency in Go
Linux/Embedded Linux
CI/CD
Testing
GitHub Actions

Tools

Docker
Protobuf tooling (protoc/Buf)
GitHub Actions

Job description

Position: Golang Software Engineer

Location: Apex, NC (Hybrid)

Pay: $100,000 to $120,000 annually

Type: Full-time; Contract

Schedule: Monday - Friday

Greene Resources is seeking a Golang Software Engineer to join a growing and dynamic team! Our team builds the connected control platform at the heart of our client’s pool automation ecosystem, orchestrating pumps, heaters, lights, valves, and salt chlorine generators through a modern Go-based middleware and gRPC API layer. You will work directly across several core codebases – a device orchestration middleware, a set of shared gRPC/protobuf API contracts, an embedded middleware application that runs on the controller hardware, and a protocol-bridging service that connects legacy clients to our newer API – helping us evolve a heterogeneous hardware control platform into a clean, well-tested, well-documented service architecture. We need someone who can move quickly in existing Go codebases, reason carefully about protocol and API design, and communicate clearly with a small, senior engineering team.

Job Description
  • Design, build, and maintain Go services and libraries for device orchestration, binary encoding/decoding, and hardware transport abstraction (IP and serial-based communication).
  • Contribute to an embedded middleware application that runs on the platform controller and coordinates hardware communication in real time.
  • Extend and version a set of shared gRPC API contracts using Protocol Buffers and modern schema-management tooling, keeping multiple language consumers in sync.
  • Work on a protocol-bridging service that connects a legacy JSON-based client protocol to a newer gRPC API, including protocol translation and conformance testing.
  • Follow Google AIP-aligned API design conventions when adding or modifying gRPC services and messages.
  • Write automated unit, integration, and conformance tests, and use GitHub Workflows for automated build, lint, and test pipelines.
  • Participate in code and design reviews with the existing platform team, and help evolve device abstraction patterns for pumps, heaters, lights, and valves.
  • Debug and resolve issues across the communication stack, from serial transport up through the gRPC API layer.
  • Document architecture decisions, API changes, and operational runbooks to support cross-team collaboration.
Position Requirements
  • 3+ years of professional experience writing Go (Golang) in production systems; comfortable working in large, multi-package codebases.
  • Practical experience with gRPC and Protocol Buffers, including schema design, versioning, and code generation (Buf or protoc).
  • Familiarity with API design guidelines such as Google’s AIP standards, or a strong instinct for consistent, well-structured API contracts.
  • Experience with device communication protocols and transport abstractions (e.g., serial/RS485, TCP/IP, or similar embedded I/O).
  • Comfortable working in Linux/embedded Linux environments and Docker-based build systems.
  • Solid testing discipline – unit tests, integration tests, and mock-driven or conformance-style test suites.
  • Proficient with Git-based workflows and CI/CD pipelines (GitHub Actions or similar), including multi-repo coordination.
  • Understanding of concurrent and networked systems design in Go (goroutines, channels, context cancellation).
  • Communicates clearly in writing – PR descriptions, design docs, and code comments that a distributed team can follow.
  • Comfortable working closely with a senior architect and firmware/hardware-adjacent teammates on cross-component issues.
  • Values clean, modular architecture and is willing to refactor toward it, not just add new code on top of existing patterns.
  • Reliable and self-directed – comfortable owning tickets end-to-end and reporting progress proactively.
Nice To Have
  • Experience with WebSocket protocols or building protocol translation/bridging services between legacy and modern APIs.
  • Background in IoT device management, home automation, or connected hardware products.
  • Exposure to hardware communication protocols such as 802.15.4, Bluetooth, or other embedded RF/serial standards.
  • Experience with workflow orchestration or event-driven architectures.
  • Familiarity with firmware/bootloader concepts and OTA update strategies for embedded Linux devices.
  • Prior experience in pool, HVAC, or other residential equipment automation is a plus, but not required.

Greene Resources is part of Array Corporation, the leading technology-enabled workforce solutions company whose mission is to fix how work is bought, sold and delivered to enable access to the American Dream.

We are proud to be an Equal Employment Opportunity and Affinitive Action employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability or veteran status.

#GRPRO

Get your free, confidential resume review.
or drag and drop your file here.
Similar jobs

Similar jobs worth comparing

Golang Software Engineer
Golang Software Engineer

Maytav Bus Co • Apex (NC)

Hybrid
USD 100,000 - 120,000
GoLang Developer
GoLang Developer

Insight Global • Apex (NC)

On-site
USD 120,000 - 160,000
Golang Software Engineer
Golang Software Engineer

Actalent • Raleigh (NC)

On-site
USD 110,000 - 170,000
Medical
Dental
Vision
+7
Golang Software Engineer - IoT Middleware & gRPC
Golang Software Engineer - IoT Middleware & gRPC

Maytav Bus Co • Apex (NC)

On-site
USD 100,000 - 120,000
Hybrid Go Engineer: IoT Device Orchestration & gRPC
Hybrid Go Engineer: IoT Device Orchestration & gRPC

Greene Resources • Apex (NC)

Hybrid
USD 100,000 - 120,000
Go (Golang) Developer
Go (Golang) Developer

Ampcus Inc • Salt Lake City (UT)

On-site
USD 110,000 - 165,000
Go Applications Engineer
Go Applications Engineer

Bright Vision Technologies • Austin (TX)

Remote
USD 130,000 - 145,000
Golang Software Engineer
Golang Software Engineer

Compunnel, Inc. • Phoenix (AZ)

On-site
USD 120,000 - 180,000
Back End Go Developer
Back End Go Developer

ReqRoute,Inc • Lowell (MA)

On-site
USD 110,000 - 150,000
Senior Software Engineer (Golang)
Senior Software Engineer (Golang)

Grid Dynamics • United States

On-site
USD 130,000 - 170,000
Competitive salary
Flexible schedule
Comprehensive benefits
+3