Software Architect (Experienced) - SEAL - Colorado Springs, CO - Open Rank
Role details
Job location
Tech stack
Job description
The Software Architect designs, develops, and deploys software solutions for GTRI's applied research sponsors. The Software Architect provides technical leadership, including design documentation that details recommendations and implementation details about software subsystems, hardware technologies, and deployment requirements. The Software Architect is knowledgeable in continuous development / continuous integration (CD/CI) best practices and enabling technology, cloud platforms for deployment, and development environment creation and management. The Software Architect is also able le to independently implement any portion of the design/development process, as needed for custom implementations. Key Responsibilities
- Develop software system architectures to solve complex analytic systems
- Develop complex test plans and coordinate testing activities.
- Lead field test activities including efficient troubleshooting of test or system malfunctions, on-the-fly interpretation of test results, and ability to modify test plans to adapt to tests results on the fly
- Diagnose and troubleshoot systems as required, and perform or document required resolutions
- Perform comparative analysis to similar systems, assessing system strengths and weaknesses
- Research system theory and design concepts and implementation methods to help in determining system functionality, state of the art, and potential weaknesses
- Serve as primary author of technical reports/presentations for projects of high complexity
- Serve as a resource and Subject Matter Expert (SME) for software engineering tools and technologies
- Significantly contribute to whitepapers and proposals
Additional Responsibilities
- Mentor and train junior engineers and technical staff in systems thinking, software design patterns, secure coding practices, and debugging methodologies
- Champion code quality initiatives, including code reviews, static analysis, and remediation of issues identified through quality metrics and scanning tools
- Collaborate with cross-functional teams, including hardware engineers, DevOps, QA, field operations, and product management, to ensure seamless solution delivery
- Lead technical integrations of software systems with sensor hardware and specialized platforms
- Drive adoption of modern software engineering practices, including containerization, virtualization, and CI/CD pipelines, while understanding bare-metal deployment trade-offs
- Facilitate architecture review sessions and technical workshops for project stakeholders and sponsor representatives
- Support technology transfer and sustainment efforts by preparing comprehensive design documentation, operational manuals, and user training content
- Contribute significantly to whitepapers, proposals, and the advancement of open architecture initiatives
- Optimize application performance through profiling, benchmarking, and tuning of CPU, memory, and I/O subsystems
Requirements
- Minimum 5 years of professional experience developing complex software systems with demonstrated systems thinking-understanding how systems work from low-level hardware through high-level software abstractions
- Extensive hands-on experience with software design patterns and ability to articulate trade-offs among patterns based on quality attributes they support
- Expert-level programming proficiency in C and/or C++ with modern language standards (C++11/14/17 or later preferred), with proven ability to develop applications in multiple programming languages
- Substantial experience (minimum 3 years) developing software for multicore, multi-CPU, and distributed parallel systems with a deep understanding of threading, synchronization, message passing, and related primitives
- Demonstrated experience with multiple operating systems (e.g., Linux, Windows) and ability to make informed architectural trade-offs based on OS-specific features and design patterns
- Experience with DoD open standards and architectures, including Open Mission Systems (OMS), Modular Open Systems Approach (MOSA), and familiarity with FACE, SOSA, or UCI specifications
- Proven expertise in secure coding practices with knowledge of common vulnerabilities and mitigation strategies
- Strong debugging and troubleshooting skills across multiple layers of the stack using tools such as GDB or system tracing utilities
- Excellent communication skills with the ability to mentor others, produce clear technical documentation, and convey complex technical concepts to both technical and non-technical stakeholders
- Proven ability to independently decompose large technical tasks into modular, manageable components
- Understanding of networking fundamentals and communication protocols (e.g., TCP/IP, UDP, message-oriented middleware)
Preferred Qualifications
- Active Top Secret Clearance
- Strong understanding of bit and byte manipulation, endianness, memory architectures, interrupts, I/O buses, and instruction sets
- Experience developing for non-x86/x64 CPU architectures (ARM, RISC-V, MIPS) with an understanding of architecture-specific considerations
- Knowledge of real-time operating systems (RTOS) and design requirements for soft and hard real-time applications
- Embedded systems and firmware development experience, including hardware-software co-design
- Familiarity with low-level open APIs such as POSIX and their role in building portable software
- Experience with modern data center technologies and trade-offs among bare-metal, virtualized, and containerized deployment environments (Docker, Kubernetes)
- Proficiency with cross-platform development tools, including GCC, LLVM/Clang, cross-compilers, debuggers, and profilers
- Experience with code quality metrics and analysis tools (e.g., SonarQube, Coverity, static analyzers), including prioritizing and remediating identified issues
- Experience with version control systems (Git) and CI/CD pipelines (Jenkins, GitLab CI/CD, GitHub Actions)
- Performance optimization experience, including profiling, benchmarking, and tuning applications
- Familiarity with cloud platforms (AWS, Azure) or edge computing architectures
- Experience working in Agile/DevOps environments
- Understanding of specialized communication protocols (DDS, CAN bus, serial protocols)
- Experience with JTAG debuggers or hardware debugging tools
- Contributions to open-source projects demonstrating collaboration and community engagement
- Track record of leading cross-functional teams and fostering inclusive, collaborative team environments
- Advanced degree (M.S. or Ph.D.) in Computer Science, Computer Engineering, Electrical Engineering, or related field
Travel Requirements
<10% travel 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 3.2.1 of the Georgia Tech Faculty Handbook
- 9 years of related experience with a Bachelor's degree in Electrical Engineering, Aerospace Engineering, Computer Science, Physics or another related field.
- 7 years of related experience with a Masters' degree in Electrical Engineering, Aerospace Engineering, Computer Science, Physics or another related field.
- 4 years of related experience with a Ph.D. in Electrical Engineering, Aerospace Engineering, Computer Science, Physics or another related field.
Benefits & conditions
$149,220 - $206,100 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/. Equal Employment Opportunity