Software Engineer Level 2
About the role
- We are seeking a Software Engineer to support a product development team within the Data Warehouse Platforms Engineering Shared Services & Software Development organization. The ideal candidate will support the design, development, integration, and sustainment of software solutions deployed across large-scale compute environments.This role focuses on Agile software development and requires experience building, enhancing, and maintaining complex systems, including solutions that integrate or extend COTS and GOTS products. The successful candidate will work independently on technical challenges while providing guidance and support to junior engineers.
What you'll do
- Design, develop, integrate, test, and maintain software solutions supporting large-scale compute environments.
- Troubleshoot and resolve complex technical issues while supporting operational stability.
- Develop solutions that integrate and extend COTS/GOTS products.
- Conduct code reviews, architecture reviews, and evaluate technical designs for accuracy and completeness.
- Support continuous improvement through optimization, automation, and process enhancements.
- Provide technical guidance and mentorship to junior developers.
- Support CI/CD pipelines, operational monitoring, and software deployment activities.
- Participate in rotating Tier III on-call support and mission surge activities as required.
Qualifications
- U.S. Citizenship with an active TS/SCI clearance with Polygraph.
- 14+ years of Software Engineering experience supporting programs and contracts of similar scope, type, and complexity.
- Bachelor’s degree in Computer Science or a related technical discipline from an accredited college or university.
- Four additional years of Software Engineering experience on projects with similar software processes may substitute for a bachelor’s degree.
- Strong experience developing Java applications for distributed systems, including networking and multithreading.
- Experience with Infrastructure as Code (IaC) tools such as Ansible or Puppet.
- Experience with Continuous Integration, Continuous Deployment, automated testing, and operational monitoring.
- Experience with Agile development methodologies and source code management practices.
- Strong Linux fundamentals and experience with scripting languages such as Python, Ruby, or Perl.
- Experience with microservices architectures, containerization, and container orchestration platforms such as Kubernetes and Docker.
Preferred Qualifications
- Experience with Apache Hadoop, Accumulo, and NiFi.
- Experience with MongoDB and messaging systems such as ActiveMQ.
- Experience with Spring Framework, Python, and Bash scripting.
- Knowledge of security and compliance best practices.
- Experience supporting data warehouses, analytics platforms, data flows, and presentation tools.
- Experience with AWS cloud technologies, hybrid cloud environments, and enterprise cloud solutions.
- Experience supporting large-scale distributed systems and mission-critical applications.