Senior Software Engineer
Company | STR |
---|---|
Location | Burlington, MA, USA |
Salary | $Not Provided – $Not Provided |
Type | Full-Time |
Degrees | Bachelor’s, Master’s, PhD |
Experience Level | Mid Level, Senior |
Requirements
- BS, MS, or PhD in Computer Science or related technical field
- 3-5+ years of relevant experience depending on degree (BS + 5 years or MS + 3 years)
- Demonstrate expertise in Java and Object-Oriented Design techniques
- Experience designing, building, testing, debugging, and maintaining a large codebase
- Ability to quickly learn new programming languages, third-party software frameworks, and innovative technologies
- Experience with object-oriented programming principles
- Experience with service-oriented architectures or micro-service architectures
- Experience with containerization/orchestration tools such as Docker and Kubernetes
- Experience with Agile software lifecycle methodologies and tools, such as JIRA and SonarQube
- Experience with GitLab, CI/CD tools, automated testing frameworks, and code quality tools in software development processes
- Experience with test-driven development methodologies
- Experience developing concurrent and asynchronous code
- A demonstrated ability to adopt new languages, libraries, and technologies
- This position requires an Active Top Secret (TS) Security Clearance with SCI eligibility, for which U.S citizenship is needed by the US government.
Responsibilities
- Work as part of a tightly knit team to design, develop, implement, and deploy advanced algorithms and software systems
- Assist other technical contributors throughout the software lifecycle, from early prototypes to integrated systems
- Work on a diverse set of applications, including software and integration for distributed mission planning, Intelligence Surveillance Reconnaissance (ISR) management, and novel visualizations to provide decision support to human analysts/planners.
Preferred Qualifications
- Experience with Matlab
- Experience with integration of complex software systems
- Experience with performance profiling and tuning
- Experience with distributed computing, e.g., Kafka event streams
- Experience integrating with larger software systems, including unit and system-level testing
- Have domain expertise in one or more of the following areas: electronic warfare, antenna apertures, sensor resource planning/management, large-scale platform test systems, cyber physical systems