Software Engineer
About the role
- Design, develop, test, deploy, and maintain scalable software applications and services
- Develop backend software solutions using Python
- Develop and maintain applications utilizing Java and PythonDesign, build, integrate, and consume RESTful APIs supporting application functionality and system interoperability
- Design, develop, and optimize solutions utilizing relational databases
- Collaborate with software engineers, architects, and stakeholders to define technical requirements and implement effective solutions
- Troubleshoot software defects, system integration issues, and application performance problems
- Participate in code reviews and promote software engineering best practices
- Contribute throughout the full software development lifecycle, from requirements analysis through deployment and sustainment
- Participate in Agile ceremonies and activities, including sprint planning, development, testing, and retrospectives
- Ensure software solutions meet security, performance, scalability, and maintainability requirements
- Must be fully cleared with a recent polygraph
- Must be willing and able to work fully onsite at the location listed in this posting
- Bachelor's degree in Computer Science, Software Engineering, Information Systems, or a related technical discipline, or equivalent experience
- Expert-level software engineering experience; the RFQ identifies the position as requiring 12+ years of experience with a Master's degree
- Experience developing applications using Java and Python
- Experience designing and consuming RESTful APIsStrong experience with relational databases such as: PostgreSQLOracleMicrosoft SQL ServerMySQLExperience developing and maintaining software within Linux/Unix environments
- Understanding of software engineering best practices, including version control, software testing, and code reviews
- Experience working within Agile software development environments
- Desired Qualification Experience developing cloud-based applications, preferably within AWS environments
- Experience with CI/CD pipelines and DevOps practices
- Experience with containerization technologies and microservices architectures
- Experience with Git, Jenkins, Terraform, or similar development and infrastructure tools
- Familiarity with Elasticsearch, OpenSearch, or related enterprise search technologies
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.
