Georgia Tech

Software Engineer - ASL - Open Rank

Georgia Tech$110K — $130K *
Aerospace & Defense
Less than 5 years of experience
Job Overview by Ladders

Qualifications

  • 9+ years of software development experience with a Bachelor's degree in a related field, or 7+ years with a Master's, or 4+ years with a Ph.D.
  • Proficiency in C/C++ and common scripting languages, including Bash and Python.
  • Experience in developing, integrating, and testing unmanned autonomous systems.
  • Familiarity with multi-threaded and multi-process applications and software IPC mechanisms.
  • Previous experience managing software projects and estimating development timelines.

Responsibilities

  • Design, develop and test software applications for autonomy programs.
  • Manage software development teams and provide technical leadership.
  • Define requirements and create software designs considering hardware limitations.
  • Compile input from researchers for technical reports and deliverables.
  • Lead initiatives for white papers and research proposals.
  • Create and analyze network communication protocols.
  • Ensure compliance with military and safety standards.

Benefits

  • Health & Welfare plans
  • Retirement Plans
  • Tuition Reimbursement
  • Time Off
  • Professional Development opportunities
Full Job Description
Project/Unit Description

The Applied Systems Lab (ASL) Autonomy Technology Transition Division (ATTD) is currently seeking an experienced Software Engineer for a full-time research faculty position.

ATTD conducts research supporting sponsors across the Department of Defense and focuses on autonomous uncrewed aircraft programs. Expertise includes autonomous systems, systems engineering, avionics engineering, embedded software development, test and evaluation, and hardware- and software-in-the-loop development and test environments and laboratories.

Job Purpose

The Software Engineer designs, develops, and tests software applications and products. Additionally, the Software Engineer manages software development teams, provides technical leadership, and establishes software development lifecycle practices and processes. The Software Engineer is proficient in programming languages such as Java, JavaScript, C, C++, C#, Ruby, Python, Scala, and Groovy. In this role, the Software Engineer requires extensive knowledge of programming languages, software development, computer operating systems, Continuous Integration/Continuous Delivery (CI/CD), DevOps, Application Programming Interface (API) development, container development, and distributed systems. The Software Engineer also applies engineering principles to software creation, manages production releases of software, performs code reviews, merges feature development branches, and analyzes and triages issues. The necessary skill areas for the Software Engineer include programming and coding, fundamentals of computer science, software design and architecture development, algorithms and data structures, information analysis, software debugging and testing, and working on development teams. The Software Engineer also works with sponsors to curate requirements, define sprint work items, set priorities for work backlogs, and organize development teams.

Key Responsibilities
  • Perform software development, debugging, modification, enhancement, and documentation.
  • Design, test, and develop computer software in order to meet program requirements.
  • Apply expertise in computing systems to define requirements and develop software designs recognizing limitations of target hardware platforms.
  • Author technical reports and presentations for projects of moderate-to-high complexity.
  • Compile report input from other researchers and prepare final report deliverables.
  • Lead and/or contribute to white papers and proposals.
  • Create and analyze network protocols.
  • Provide technical leadership to development teams.

Additional Responsibilities
  • Serve as a resource and Subject Matter Expert (SME) for software engineering tools and technologies.
  • Sole or shared maintainer for large multi-language codebases. Manage code review and acceptance, set and enforce code quality, stability, and security requirements as necessary to meet sponsor needs and requirements.
  • Manage and review the overall software requirements and software design.
  • Create software development estimates.
  • Create and deliver technical presentations.
  • Ensure software is developed to meet military, safety, and security standards.

Required Minimum Qualifications
  • Experience developing software for complex systems using disciplined approaches and processes.
  • Experience developing software estimates and managing the software development through the project lifecycle.
  • Experience developing, integrating, and/or testing unmanned autonomous system capabilities.
  • Experience developing software in C/C++ languages.
  • Experience with common scripting languages, including bash and Python.
  • Experience developing software on Linux and deploying to Linux target systems.
  • Experience developing multi-threaded and multi-process applications and systems.
  • Experience with common software IPC mechanisms, such as shared memory, pub-sub messaging, and RPC. Aware of design tradeoffs and considerations for such mechanisms.
  • Experience with containerized software development.
  • Experience leading sponsored research projects and sponsor interactions.
  • Experience facilitating dialogue, collaboration, and partnerships among research personnel, government, and industry stakeholders.

Preferred Qualifications
  • Active Secret Clearance.
  • Experience managing and providing technical leadership for complex, high-value engineering programs.
  • Experience with software designs including architectures, requirements, behavior allocation, and interface design for autonomous systems.
  • Experience with developing and fielding autonomous systems or solutions.
  • Experience developing/designing complex, software-intensive military unmanned air systems (UAS).
  • Experience developing autonomous unmanned aircraft systems (UAS/UAV).
  • Experience with open systems architecture frameworks (e.g., FACE™ and OMS/UCI).

Travel Requirements
  • 10% - 25% travel.

Education and Length of Experience

This position vacancy is an open-rank announcement.The final job offerwill be dependent on candidate qualifications in alignment with Research Faculty Extension Professional ranks as outlined in section 3.2.1 of the Georgia Tech Faculty Handbook
  • 9 years of related experience with a Bachelor's degree inComputer Engineering, Computer Science, Aerospace Engineering, Electrical Engineering, Mechanical Engineering or related field.
  • 7 years of related experience with a Masters' degree in Computer Engineering, Computer Science, Aerospace Engineering, Electrical Engineering, Mechanical Engineering or related field.
  • 4 years of related experience with a Ph.D. inComputer Engineering, Computer Science, Aerospace Engineering, Electrical Engineering, Mechanical Engineering or related field.

U.S. Citizenship Requirements

Due to our research contracts with the U.S. federal government, candidates for this position must be U.S. Citizens.

Clearance Type Required

Candidates must be able to obtain and maintain an active security clearance.

Benefits at GTRI

Comprehensive information on currently offered GTRI benefits, including Health & Welfare, Retirement Plans, Tuition Reimbursement, Time Off, and Professional Development, can be found through this link: https://benefits.hr.gatech.edu/.

About Georgia Tech

The Georgia Institute of Technology, commonly referred to as Georgia Tech or, in the state of Georgia, as Tech, is a public research university and institute of technology in Atlanta, Georgia. It is part of the University System of Georgia and has satellite campuses in Savannah, Georgia; Metz, France; Athlone, Ireland; Shenzhen, China; and Singapore. The school was founded in 1885 as the Georgia School of Technology as part of Reconstruction plans to build an industrial economy in the post-Civil War Southern United States. Initially, it offered only a degree in mechanical engineering. By 1901, its curriculum had expanded to include electrical, civil, and chemical engineering. In 1948, the school changed its name to reflect its evolution from a trade school to a larger and more capable technical institute and research university. Today, Georgia Tech is organized into six colleges and contains about 31 departments/units, with emphasis on science and technology. It is well recognized for its degree programs in computer science, engineering, and business. Student athletics, both organized and intramural, are a part of student and alumni life. The school's intercollegiate competitive sports teams, the four-time football national champion Yellow Jackets, and the nationally recognized fight song "Ramblin' Wreck from Georgia Tech", have helped keep Georgia Tech in the national spotlight. Georgia Tech fields eight men's and seven women's teams that compete in the NCAA Division I athletics and the Football Bowl Subdivision. Georgia Tech is a member of the Coastal Division in the Atlantic Coast Conference.
Learn more about Georgia Tech

Similar Jobs

More Jobs at Georgia Tech

More Aerospace & Defense Jobs

Find similar Software Engineer - ASL - Open Rank jobs: