Software Engineer Intern
General Dynamics Mission Systems
ROLE AND POSITION OBJECTIVES
As a Software Engineer Intern for GDMS, you’ll be a member of a cross-functional team responsible for performing software requirements analysis, leading research and design, and developing and testing software and tools.
Key Responsibilities
- Assist in software requirements analysis.
- Participate in research, design, develop, and test software and tools, including development of new work products or enhancing existing applications.
- Apply appropriate standards, processes, procedures, and tools throughout the system development life cycle to support the generation of technical engineering products.
- Support and develop our technical culture by being engaged, intellectually curious, friendly, motivated to solve complex problems, and inspired to deliver superior user-centered design.
- Participate in internal reviews of software components and systems.
Requirements & Tech Stack
Programming Skills
- Strong fundamentals in Computer Science theory (data structures, algorithms, and computational complexity).
- Solid object-oriented programming and software design skills.
- Proficient in one of the following: Java, C++, or JavaScript/TypeScript (using object-oriented techniques).
- Web Services knowledge such as HTML, CSS, JavaScript/TypeScript, React, and Redux.
Additional Beneficial Common Programming Patterns/Paradigms
- Familiarity with multiple DevOps tool chains (Docker, Kubernetes, Helm/Ansible/Terraform, Jenkins, GitLab).
- Familiarity with cloud services and tooling (AWS).
- Experience supporting software teams using Agile methodologies.
- Detailed and fully proficient knowledge of technology trends and champions new ideas and product and process improvements.
- Concurrent programming and building multi-threaded systems.
- Memory and CPU profiling.
- Data modeling and writing efficient data access methods.
- Experience building large-scale mission-critical applications.
- Experience with distributed systems.
- Experience with message queues (Kafka, RabbitMQ).
- Direct manipulation of user interfaces.
- Information visualization (charts, rendering maps).
Qualifications
- Candidates should demonstrate a thorough understanding of engineering technology.
- Must be enrolled in an accredited degree program in Computer Engineering, Systems Engineering, Software Engineering, Electrical Engineering, Mechanical Engineering or other related scientific or technical discipline.
- Preference for a standing of a sophomore or higher.
- Creative thinker with demonstrated success leading the software development life cycle.
- Expertise in applying technical standards and methodologies to solve challenges.
- Exceptional communication skills with the capacity to secure buy-in on concepts and ideas.
- Collaborative team player eager to provide technical leadership and position others for success.
- Commitment to ongoing professional development for yourself and others.
- Appreciation for user-centric design.
- U.S. citizenship is required.
- Department of Defense Secret security clearance is preferred at time of hire.
Applicants selected will be subject to a U.S. Government security investigation and must meet eligibility requirements for access to classified information.