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
Additional Responsibilities
A successful candidate will work on SEAD’s Software Integration and Test team, integrating hardware and software components to verify complete system's behavior. Integration and Test includes laboratory testing conducted on prototypes and / or complete hardware and software builds. Integration is used to evaluate software compliance with its specified interfaces, functional and algorithm requirements, and performance. Software Integration and Testing validates the interactions between the modules of a software system. It requires the verification of the software requirements specified in the Software Requirements Specification, Capability Document, or the Software Design Document.
Integration and test team demonstrates requirements verification to the sponsor, conducts the formal software release process, and fields customer interactions via questions, issue resolution, and test events.
SEAD utilizes productive modern (Agile) and industry proven software development processes and environments in our software development and Integration and Test activities.
The candidate will be an active engineering participant on the team, perform integration and test tasks independently, and contribute to developed and tested software test capabilities. The successful candidate will have opportunities to interact with various software architectures and technologies (real-time, high performance, machine learning, middleware, hardware interfaces, GUIs, and networking) and sensor functions (Electronic Warfare and Radar).
Required Minimum Qualifications
Preferred Qualifications
Travel Requirements
Education and Length of Experience
This position vacancy is an open-rank announcement. The final job offer will be dependent on candidate qualifications in alignment with Research Faculty Extension Professional ranks as outlined in section of the Georgia Tech Faculty Handbook
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.
Entry Level Engineer • Smyrna, GA