Principal Software Engineer

Trident Systems, Inc.

$120K — $222K *
Information Technology
8 - 10 years of experience
Job Overview by Ladders

Qualifications

  • Bachelor's in Computer Science, Software Engineering, or related field plus 9 years experience, or 7 years with a graduate degree.
  • Proficient in Python software development.
  • Skilled in creating maintainable production-quality software with modular design and testing.
  • Experienced in Python libraries for data processing and APIs.
  • Familiar with Linux and Windows development environments.
  • Knowledgeable in data formats like JSON, CSV, and REST APIs.
  • Proficient with databases like PostgreSQL and Git for version control.

Responsibilities

  • Design and develop custom software for condition-based maintenance projects.
  • Implement software for data processing, transmission, and platform export.
  • Integrate data into standardized formats and external interfaces.
  • Maintain software connections to databases and external applications.
  • Develop algorithms for data analysis and presentation.
  • Collaborate on software that interacts with both hardware and software systems.
  • Document all development activities and support customer-facing engineering tasks.

Benefits

  • Comprehensive health benefits including medical, dental, and vision.
  • Paid time off and holidays.
  • 401(k) with automatic company contributions.
  • Tuition reimbursement opportunities.
  • Flexible leave options including parental and military leaves.
  • Eligibility for potential annual bonuses.
Full Job Description
Position Title: Principal Software Engineer

Requisition ID: 1872

Position Location: Fairfax, VA (Hybrid)

Position Reports To: Program Manager

Supervises Others: No

Position Summary

This position will be part of a team responsible for software design and development for Predictive Maintenance & Logistics (PM&L) projects and other internal software development efforts within the ICS Business Unit. The Principal Software Engineer will design, implement, and test software that supports data manipulation and storage, translation, sensor data capture and transmission, export of data to multiple platforms, conversion to standardized messaging formats, and graphical user interface design. The role requires development predominantly in python on Linux systems, including interaction between processors, external devices, external software interfaces, and networked systems. The employee will work as part of a fast-paced engineering team, support technical demonstrations and test events, and document development efforts through design documentation, interface control documents, user manuals, and test plans. *This role requires the employee to work onsite in Fairfax, VA a few days a week, with the ability to work from home on a hybrid basis.

Duties and Responsibilities
  • Design, implement, and test custom software for condition-based maintenance and other internal projects.
  • Develop software for data manipulation, storage, translation, sensor data capture, sensor data transmission, and export to different platforms.
  • Convert and integrate data into standardized messaging formats and external software interfaces.
  • Build and maintain software interfaces to databases, APIs, file-based data sources, message brokers, and external applications.
  • Implement algorithms in software for data manipulation, analysis, and presentation.
  • Develop software that operates in conjunction with external and embedded hardware/software across Linux, Windows, and Android environments.
  • Document development efforts through design documentation, interface control documents, user manuals, and test plans.
  • Support software packaging, deployment, configuration management, and troubleshooting in lab, field, and customer environments.
  • Support technical test events, demonstrations, and customer-facing engineering activities as part of a fast-paced team.


Required Qualifications
  • Bachelor's degree in Computer Science, Software Engineering, Data Science, or equivalent and a minimum of 9 years of related experience working in an agile environment OR 7 years with a graduate degree (or 13 total years in lieu of a degree).
  • Experience with Python software development.
  • Experience developing maintainable production-quality software, including modular design, error handling, logging, configuration management, and unit/integration testing.
  • Experience with Python libraries and frameworks for data processing, automation, APIs, and/or application development.
  • Experience working in Linux and Windows development environments.
  • Experience with data formats and interfaces such as JSON, CSV, XML, REST APIs, sockets, message queues, or similar mechanisms.
  • Experience with databases and data storage technologies such as PostgreSQL, SQLite, InfluxDB, object storage, or similar systems.
  • Experience with software revision control systems such as Git, SVN, or similar tools.
  • Ability to troubleshoot software issues across applications, operating systems, networks, and external system interfaces.


Preferred Qualifications
  • Experience with condition-based maintenance, predictive maintenance, vehicle health management, telemetry, sensor data, or diagnostic systems.
  • Experience with data analytics, signal processing, machine learning, or algorithm implementation in Python.
  • Experience with Python web or API frameworks such as Flask, FastAPI, Django, Dash, or similar tools.
  • Experience with embedded Linux, edge-compute devices, or software interaction with embedded/external hardware.
  • Experience with containerization, deployment, and DevOps tools such as Docker, CI/CD pipelines, or automated build systems.
  • Strong verbal and written communication skills with the ability to document technical work clearly.
  • Strong team orientation and ability to work effectively in a fast-paced engineering environment.

Pay Information

Full-Time Salary Range: $120,000 - $222,000
Please Note: Actual compensation offered will be determined based on several factors including, but not limited to, relevant experience, skills, education, certifications, internal equity, business considerations, and geographic location where applicable.

Benefits

Hired applicants may be eligible for benefits including but not limited to:
  • Health benefits
    • Medical
    • Dental
    • Vision
    • Basic life with AD&D
    • Short term disability
    • Long term disability
    • Ancillary (Voluntary life with AD&D, accident, critical illness, hospital, and pet)
    • Spending accounts (HSA, FSA, and DCFSA)
  • Paid time off
  • Holidays
  • 401(k) (including automatic company contribution)
  • Tuition reimbursement
  • Leaves (Parental, pregnancy, and military)
  • Potential annual bonus


Trident Systems reserves the right to change or assign other duties to this position.

Similar Jobs

More Jobs at Trident Systems, Inc.

More Information Technology Jobs

Find similar Principal Software Engineer jobs: