Software Engineer

GRVTY•Annapolis Junction, MD
•$170,000 - $200,000

About The Position

GRVTY is seeking a Software Engineer with an active TS/SCI with Polygraph clearance to join a project in Annapolis, Maryland. The role develops, maintains, and enhances complex software systems based on documented requirements, including processing-intensive analytics, novel algorithms, large data sets, real-time systems, and business management information systems. The engineer may work individually or as part of a team; reviews and tests software components against design requirements; documents test results; resolves software problem reports; and applies software development and design methodologies appropriate to the environment. The role also provides input on software aspects of system design, including hardware/software trade-offs, software reuse, COTS/GOTS use, and analysis and synthesis of requirements from system level to individual software components.

Requirements

  • Active TS/SCI with Polygraph clearance.
  • Twelve years of experience as a software engineer in programs and contracts of similar scope, type, and complexity.
  • Bachelor’s degree in Computer Science or a related discipline from an accredited college or university; four additional years of SWE experience on projects with similar software processes may substitute for the degree.
  • Strong skills in Java, Spring Boot, Mongo, Kafka, JMS, Kubernetes, Docker, and CI/CD.

Nice To Haves

  • Analyze user requirements to derive software design and performance requirements.
  • Debug existing software and correct defects.
  • Recommend improvements to documentation and software development process standards.
  • Design and code new software or modify existing software to add features.
  • Integrate software into new or modified systems or operating environments.
  • Develop simple data queries for existing or proposed databases or data repositories.
  • Write or review software and system documentation.
  • Serve as team lead at the level appropriate to the software development process.
  • Design or implement complex database or data repository interfaces and queries.
  • Develop or implement algorithms that meet or exceed system performance and functional standards.
  • Assist with developing and executing test procedures for software components.
  • Develop software solutions by analyzing system performance standards, consulting users or system engineers, analyzing systems flow, data usage and work processes, and investigating problem areas.
  • Modify software to correct errors, adapt to new hardware, or improve performance.
  • Design, develop, and modify software systems using scientific analysis and mathematical models to predict and measure outcomes and consequences.
  • Design or implement complex algorithms subject to strict timing, system resource, or interface constraints, and perform quality control on team products.
  • Implement improvements to documentation and software development process standards.
  • Oversee software development teams and ensure work complies with the applicable software development process.
  • Confer with system and hardware engineers to derive software requirements and obtain information about project limitations, capabilities, performance requirements, and interfaces.
  • Coordinate software system installation and monitor equipment functioning to ensure operational specifications are met.
  • Recommend technologies and processes for complex software projects.
  • Serve as technical lead of multiple software development teams.
  • Select the software development process in coordination with the customer and system engineering.
  • Ensure quality control of developed and modified software.
  • Delegate programming and testing responsibilities to teams and monitor their performance.

Responsibilities

  • Develop, maintain, and enhance complex software systems based on documented requirements.
  • Review and test software components for adherence to design requirements and document test results.
  • Resolve software problem reports.
  • Apply software development and design methodologies appropriate to the development environment.
  • Provide input to software aspects of system design, including hardware/software trade-offs, software reuse, COTS/GOTS use, and requirements analysis and synthesis.

Benefits

  • Competitive pay
  • Comprehensive benefits
  • Professional growth opportunities
  • Medical, dental, and vision coverage
  • Health Savings Account with company contribution
  • Annual paid time off
  • Paid holidays
  • Paid parental leave
  • 401(k) with company match
  • Training and development opportunities
  • Award programs
  • Company-sponsored events
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service