Software Engineer
Leidos
Arlington, VA 22201
Posted 9 months ago
-
Job Type(s)
Full Time
-
Industry
Engineering
-
Job Description
Software Engineer
Description
Are you interested in improving and shaping the transportation industry in a group of intelligent and motivated individuals? Leidos operates the Federal Highway Administrations (FHWA) Saxton Transportation Operations Laboratory (STOL), a US Department of Transportation research lab focused on the improvement of transportation operations, safety, mobility, and environmental impacts. STOL provides a variety of services to support the advancement and deployment of emerging technologies, including vehicle automation and communication.
Learn more about STOL here!
Our team does cutting-edge research at the Turner Fairbank Highway Research Center, often collaborating with federal, state, and industry subject matter experts. We are part of a larger, agile research team in a fast-paced environment that pushes the boundaries of connected and autonomous vehicle technology for the Federal Highway Administration (FHWA). STOL provides a variety of services to sponsor the advancement and deployment of emerging technologies, including vehicle automation and communication.
To promote these goals, Leidos is looking for a Software Engineer to join our team! This software engineer will develop, test, and maintain open-source C++ systems to support multiple research and development projects related to Intelligent Transportation System (ITS) infrastructure, vehicle automation, Vehicle-to-Everything (V2X) communication, and Cooperative Driving Automation (CDA). Automated unit tests are routinely developed and maintained as the software evolves.?Where necessary, user documentation is generated or updated to reflect changes in the software functionality.?All documentation, code and unit tests are routinely subjected to peer review in an open-source environment. Occasional interaction with on-site customer representatives will be part of the job.
Primary Responsibilities:
Conduct C++ and/or Java software package design, implementation, testing, and debugging, as it relates to vehicle path planning, localization, sensor fusion, perception, and both vehicle-to-vehicle and vehicle-to-infrastructure communications.
Play a key role in maintaining and enhancing the operation of the US Department of Transportations (USDOT) open source connected and automated vehicle tools, such as CARMA Platform, CARMA Streets, and V2XHub.
Support system integration testing both onsite in Mclean, VA, as well as offsite as necessary to meet project deliverable timelines.Operate and maintain software configuration of ITS infrastructure hardware devices such as roadside radios, sensors, and traffic signal controllers.
Develop unit tests for software packages in support of continuous integration, while also conducting integration testing both in-field and in a simulation environment.
Provide constructive feedback on GitHub Pull Requests made by other team members to help them improve their implementation skills, while also being open to feedback on your own code contributions.
Support both the internal development team and external users of our open source software by developing clear and helpful documentation throughout all phases of the development process, including detailed design documents, helpful/concise comments within developed code, and informative descriptions in generated GitHub Pull Requests and Issues.
Interact with on-site customer representatives as needed throughout a projects life cycle to provide updates related to software design, development, and testing.Basic Qualifications:
A Bachelors degree in computer science, engineering, or other science discipline and 2+ years of prior full-time professional experience in C++ software development or a Masters with less than 2 years of prior full-time professional experience in C++ software development.Familiarity with C++ and CMake.
Ability to obtain and maintain a Public Trust security clearance (which includes three years immediate residency in the US).
Experience developing, testing, and troubleshooting software written in C++ and/or Java in a Linux environment.Experience with Kafka or similar message broker systems.
Understanding of quality techniques and practices (automated unit testing, test-driven design/development, continuous integration, etc.).
Experience with Git, Docker (including docker-compose), and continuous integration/continuous deployment using Docker and Sonar Cloud.
Understanding of mathematical fundamentals, including geometry, linear algebra, probability, and statistics.Preferred Qualifications:
Experience in building applications with Java and Maven.
Experience with using and/or configuring Continuous Integration/Continuous Delivery (CI/CD) systems such as Github Actions or Dockerhub.
User interface and/or front end development experience.
Familiarity existing ITS infrastructure standards and/or hardware such as those from SAE or IEEE.
Familiarity with distributed computing and cloud computing concepts.
Experience deploying robotics platforms in the real world and/or in simulation.
Strong understanding of vehicle kinematics, dynamics, and controls.Background with automation or robotics principles.
Experience with sensor fusion and object detection.
Experience developing in an Agile framework using toolsets such as JIRA and Confluence.
Familiarity with simulation environments such as SUMO or CARLA, or other simulators built in Unreal or Unity.Experience with Linux build systems and package management systems.
Anticipated pay range for this position: $80,000 to $100,000
Original Posting Date:
2023-11-22While subject to change based on business needs, Leidos reasonably anticipates that this job requisition will remain open for at least 3 days with an anticipated close date of no earlier than 3 days after the original posting date as listed above.
Pay Range:
Pay Range $65,000.00 - $117,500.00The Leidos pay range for this job level is a general guideline onlyand not a guarantee of compensation or salary. Additional factors considered in extending an offer include (but are not limited to) responsibilities of the job, education, experience, knowledge, skills, and abilities, as well as internal equity, alignment with market data, applicable bargaining agreement (if any), or other law.