Software Engineer
Role details
Job location
Tech stack
Job description
Yellowfin Technology is seeking talented Software Engineers (SWE) at multiple experience levels to support mission-critical software development efforts within the I. We are looking for candidates ranging from entry-level software engineers through senior/principal-level technical leaders.
The Software Engineer will support the full software development lifecycle, including requirements analysis, design, development, integration, testing, deployment, troubleshooting, and sustainment of software solutions supporting complex mission environments.
Key Responsibilities
-
Analyze user and system requirements and translate them into software design and performance requirements.
-
Design, develop, code, test, debug, and maintain software applications and services.
-
Develop new software capabilities and enhance existing applications to meet evolving mission requirements.
-
Investigate and resolve software defects, performance issues, and integration problems.
-
Develop and execute unit, integration, and system-level testing.
-
Integrate existing software into new or modified systems and operating environments.
-
Develop algorithms, data-processing capabilities, and database queries supporting mission requirements.
-
Participate in software architecture, interface definition, and system integration activities.
-
Develop and maintain software documentation, technical specifications, and development artifacts.
-
Support Agile software development and DevSecOps processes.
-
Utilize configuration management and version-control tools to maintain software baselines.
-
Support automated build, test, integration, and deployment processes.
-
Collaborate with Software Engineers, Systems Engineers, System Administrators, Network Engineers, cybersecurity professionals, and mission stakeholders.
-
Participate in technical reviews, code reviews, testing activities, and troubleshooting efforts.
-
Evaluate software performance and recommend improvements to reliability, scalability, maintainability, and efficiency.
-
Support containerized and cloud-based application environments, as applicable.
-
Senior-level candidates may provide technical leadership, mentor junior engineers, lead development teams, and provide technical direction for complex software engineering efforts.
Requirements
Experience with one or more of the following technologies is highly desirable:
- Java
- Python
- JavaScript
- HTML5/CSS3
- Shell/Bash scripting
- Git/GitLab
- Maven
- Nexus
- JUnit
- Jenkins
- SonarQube
- Docker
- Kubernetes
- OpenShift
- Spring
- Hibernate
- MySQL and relational databases
- REST/Web Services
- Microservices
- CI/CD pipelines
- Automated testing and deployment
- Agile development
- DevSecOps
- Linux/UNIX environments