Software Engineer
Liberty Defense · Indiana, United States · 2 wk ago
Engineering$90k–$130k/yrFull-time
Wilmington, MA
About the role
As a core member of the team, you will develop a scalable, high-performance, and resilient platform. Your work will span multiple layers of the architecture, from low-latency data ingestion services in C++ to high-level web control components in Python. You will define and implement inter-service communication contracts and ensure real-time performance requirements are met.
Responsibilities
- Lead the design and implementation of core microservices using a polyglot stack (C++, Python, Java), ensuring services are modular, performant, and maintainable.
- Define and implement robust, language-agnostic communication using GRPC (Google Remote Procedure Call) to facilitate efficient data flow between services.
- Develop and optimize high-performance components, particularly in C++, for Data Ingestion, often involving low-latency BSD Sockets and interfacing with specialized hardware.
- Collaborate with hardware teams on the FPGA/RFSOM Interface (C++) to ensure efficient, low-latency data acquisition from specialized imaging sensors.
- Define and finalize GRPC service definitions (.proto files) as the contract between all services, ensuring seamless integration across the entire distributed system.
- Contribute to the deployment strategy, including containerization (Docker) and orchestration, and establish best practices for monitoring and logging.
- Develop and utilize the Replayer component for robust testing, simulation, and scenario analysis of the full system pipeline.
Requirements
- 5+ years of professional software development experience in designing and building scalable, distributed systems.
- Strong proficiency in at least two of the following languages: C++, Python, Java, with a deep understanding of their application in a microservices environment.
- Proven experience with microservices architecture, asynchronous communication patterns, and event-driven systems.
- Extensive practical experience with GRPC and defining its associated service contracts.
- Familiarity with high-speed networking protocols like BSD Sockets is a significant plus.
- Experience with modern DevOps practices, including Docker for containerization and a basic understanding of Workload Orchestration concepts.
- Experience designing systems for high-volume, real-time data acquisition and processing.
Preferred Qualifications
- Experience with hardware acceleration or interfacing with specialized hardware (FPGA, RFSOM, etc.).
- Familiarity with image processing, signal processing, or machine learning pipelines (e.g., using Python for prototyping image reconstruction).
- Experience with message brokers or central communication buses beyond standard HTTP, REST.
- Familiarity with web technologies (HTML, CSS, JavaScript, etc.) and webserver development using C++ or Python web frameworks.
Working Environment
The physical demands and work environment characteristics described here are representative of those that must be met to successfully perform the essential functions of this job.
- Primarily office-based environment with standard office equipment.
- Must be able to manage multiple projects and deadlines in a dynamic environment.
Pay
$90,000–$130,000 annually