Software Engineer
About the role
- Design, develop, test, and maintain software applications supporting data and analytics-driven objectives
- Build and enhance backend services, APIs, and data-centric applications
- Contribute to full-stack development efforts, including front-end UI components and backend logic
- Integrate applications with relational databases and data pipelines
- Develop and consume RESTful web services and APIsParticipate in code reviews, testing, and CI/CD pipelines to ensure quality and security
- Collaborate with DevOps teams on containerization, deployment automation, and cloud infrastructure
- Support application troubleshooting, performance tuning, and system optimization
- Follow secure coding practices and comply with applicable security and compliance requirements
- Bachelor's degree in Computer Science, Engineering, or a related field (or equivalent experience)
- Experience developing software in one or more of the following languages: Java C# /.NET Python
- Experience working with modern JavaScript frameworks such as: Vue.js Angular TypeScriptExperience working with relational databases such as: PostgreSQL Oracle
- Familiarity with RESTful APIs and service-oriented architectures
- Experience working in Linux and/or Windows environments
- Ability to work on-site in Huntsville, ALPreferred / Desired Skills
- Experience with cloud platforms (AWS and/or Azure)
- Experience with frameworks such as Spring Boot,.NET Core, or similar
- Containerization and orchestration experience: Docker Kubernetes (preferred)
- Experience with CI/CD pipelines (GitLab, Jenkins, GitHub)
- Experience with data and analytics technologies, including: Apache Spark Kafka Elasticsearch / OpenSearch Apache NiFi Solr
- Exposure to GIS technologies (e.g., ESRI ArcGIS, GeoServer) is a plus
- Familiarity with Agile/Scrum development methodologies
- Experience Level Guidelines
- Mid-Level 6 years of software development experience Strong contributor on development tasks with some exposure to design activities Senior-Level 8+ years of software development experience Experience leading technical design, mentoring junior developers, and owning components or services
Before you apply
Applying takes about a minute. These four things decide how fast it moves after that.
Your profile is current
It's what we read first. Occupations, seniority and locations matter more than a long history.
Two examples you can talk through
Not a portfolio — just two pieces of work where you can explain the decisions and what you'd change.
A number in mind
What you're on now and what would make you move. We negotiate better when we know both.
Your notice period
Employers plan around it, and it's the question that stalls offers most often.
Once you apply, someone reads it and calls you before anything reaches the employer — usually within two working days.
