Software Engineer
Backend Developer
Application Security
C++ Language
Data Processing
Design
Desktop Support
Developer
DevOps
DevSecOps
Embedded Software
Embedded System
Embedded Systems
End User Support
Engineering
Facilities Management
Frontend
Hardware Engineering
Hardware Software Co Design
Information Technology (IT)
Integration
Linux
Network
Operating System
Operating Systems
Programming
Programming Language
Programming Languages
Project Management
Real Time
Security Automation
Software Development
Software Engineer
Software Engineering
Software Security
Systems
Technical Support
Uml
Unix Operating System
Web
Web Design
Job Description
Join KBR in supporting MIT Lincoln Laboratory’s Strategic and Long-Range Communications Group through the design and delivery of software for large-scale communications system demonstrations. This hybrid/remote-friendly role focuses on building production-ready system software and validating it through lab and field experiment cycles.
Based in Lexington, MA, you will work alongside system and software engineers to translate prototype simulations into real-time code, with opportunities to contribute to architecture, integration, testing, and technical documentation for internal and external audiences.
Key Responsibilities
- Define software architecture for communications system demonstrations
- Design and implement system software, primarily in C++, including protocol and state machine design in partnership with system designers to move from prototype simulation to real-time code
- Collaborate with a multidisciplinary team to design and prototype communications-based software
- Support integration and test design, including support for lab and field experiments
- Contribute to technical documentation covering software architectures and code, including technical specifications, reports, and technical presentations for multiple internal and external audiences
Required Qualifications
- Active DoD Secret clearance
- M.S. in Software Engineering, Computer Science (or related field) with a strong background in real-time code development and code profiling; alternatively, a B. Sci with 6+ years of directly relevant experience is acceptable
- At least 5 years of C++ / C++11 experience
- At least 5 years of Java / Java Script experience
- At least 5 years of source control experience (Git/SVN/Clearcase/etc.)
- At least 5 years of object-oriented development
- At least 5 years of software modeling and UML experience
- At least 5 years of software deployment experience and knowledge of modern deployment techniques
- At least 5 years of DevSecOps experience
- At least 5 years of software algorithm development and performance improvements
- At least 5 years of experience with design patterns and data structures
- At least 5 years of experience with distributed systems and inter process communication (UDP/TCP/ActiveMQ/etc.)
- At least 5 years of experience with the Linux development environment and/or commercial real-time operating systems
- At least 5 years of experience with hardware abstraction layers
- At least 5 years of experience with software lifecycle processes
- Highly effective written and verbal communication skills, particularly for technical documentation
- Demonstrated ability to work effectively in multi-disciplinary teams
Technologies
- C++, C++11, Java, Java Script
- Git, SVN, Clearcase
- UML (Unified Modelling Language)
- UDP, TCP, ActiveMQ
- Linux, commercial real-time operating systems
- DevSecOps, Python, MATLAB
Work Environment
- Location: Lexington, MA (hybrid)
- Travel Requirements: Willing and able to travel (up to 10%, typically CONUS)
- Working Hours: Standard
Compensation
USD 156,400 - 180,000 per year
Basic Compensation: For MA only, the salary range is approximately $156,400 - $180,000 USD annually.
Desired Qualifications
- Minimum of 2-3 years experience with digital signal processing and implementation of protocols and methods into software
- Familiarity with software-defined radio protocols, design, and implementations
- Familiarity with physical layer, MAC layer, and network layer communication protocols
- Proficiency in Python
- Demonstrate familiarity with MATLAB
- Demonstrated ability to plan and manage tasks and projects (e.g., using Microsoft Project)