Principal Software Engineer

VTG

  • Hanover, Maryland
  • 30+ days ago
  • Full-time

Highlights

Overview: VTG is seeking a highly experienced Principal Software Engineer to join our team in support of a mission-focused customer responsible for developing, deploying, and maintaining user-facing Command and Control (C2) systems for embedded devices. The Principal Software Engineer will design, develop, integrate, test, and maintain enterprise software solutions that interface with embedded devices and vendor-provided Software Development Kits (SDKs).

Numbers & Facts

LocationHanover, Maryland
Job TypeFull-time

Description

Overview:

VTG is seeking a highly experienced Principal Software Engineer to join our team in support of a mission-focused customer responsible for developing, deploying, and maintaining user-facing Command and Control (C2) systems for embedded devices.

 

The Principal Software Engineer will design, develop, integrate, test, and maintain enterprise software solutions that interface with embedded devices and vendor-provided Software Development Kits (SDKs).

 

 

Responsibilities:
  • Analyze user and mission requirements to derive software design, interface, and performance requirements.
  • Design, develop, integrate, test, deploy, and maintain mission-critical Command and Control software systems.
  • Develop enterprise backend applications and services, preferably using Java and/or C++.
  • Interface with embedded devices, vendor-provided SDKs, and device drivers to implement custom business logic.
  • Develop software components that communicate with databases and other enterprise systems.
  • Implement data and object communication between programming layers using Google Protocol Buffers (Protobuf), RPC, or similar technologies.
  • Debug, troubleshoot, and correct defects in existing software applications using programming languages such as Java, JavaScript, Vue.js, Python, and C++.
  • Design and maintain scalable, highly available mission systems using modern software architecture and system design principles.
  • Develop, build, and manage Docker containers and Kubernetes pods and clusters.
  • Collaborate with systems engineers and hardware engineers to derive software requirements and understand system limitations, capabilities, performance requirements, and interfaces.
  • Design, develop, and modify software systems using engineering analysis and modeling techniques to evaluate system performance and design outcomes.
  • Develop and execute test procedures for software components.
  • Create automation scripts to improve development workflows, deployment processes, and operational efficiency.
  • Identify and recommend improvements to software development processes, technical documentation, and engineering standards.
  • Support code reviews, troubleshooting activities, system integration, and technical problem resolution.
Qualifications:
  • TS/SCI with Poly required
  • Bachelor of Science in Computer Science, or related discipline. May substitute four years' experience in lieu of a Bachelor's Degree.
  • Twenty (20) years of experience as a Software Engineer supporting programs and contracts of similar scope, type, and complexity.
  • Extensive experience designing, developing, integrating, testing, and maintaining enterprise software applications.
  • Strong backend software development experience.
  • Professional experience developing software using Java and/or C++ in an enterprise environment.
  • Experience working with multiple programming languages and technology stacks.
  • Experience interfacing software applications with relational or non-relational databases.
  • Experience designing and supporting scalable, highly available software systems.
  • Experience analyzing user requirements and translating them into software design and performance requirements.
  • Experience debugging, troubleshooting, and resolving complex software defects.
  • Experience collaborating with systems engineers, hardware engineers, and other technical teams to define software interfaces and system requirements.
  • Strong understanding of the software development lifecycle and modern software engineering practices
 
 
 
 

Similar Jobs

See more jobs