Software Engineer
Role details
Job location
Tech stack
Job description
Design and implement new software features and frameworks, delivering high-quality solutions on time and within budget. Analyze and improve the efficiency, scalability, and stability of various system resources. Engage with other team members in the planning of project timelines, implementation of design specifications, and system performance improvements. Conduct code reviews, write unit tests, and document software implementations to ensure development quality. Collaborate with cross-functional teams to integrate new features and functionality. Troubleshoot and resolve issues in existing software applications, enhancing user experience and system performance. Participate in Agile development processes, including sprint planning, stand-ups, retrospectives, and demos. Maintain up-to-date knowledge of technology standards, industry trends, and emerging technologies.
Requirements
Bachelor's degree in Computer Science, Software Engineering, or a related technical field. A minimum of 5 years of software development experience within the DoD industry. Solid understanding of software development principles and design patterns. Proficiency in one or more programming languages such as Java, C#, C++, Python, or similar. Familiarity with the full software development lifecycle and Agile methodologies. Strong analytical and problem-solving abilities. Excellent communication and teamwork skills. Ability to work independently with minimal supervision., Knowledge of Windows and UNIX based platforms (CENTOS/ROCKY/RHEL 8) Expert at JavaFX/Java 11 or greater Familiarity with software patterns and modern design methodology (UML) Knowledge of Git or Bitbucket, and JIRA Understanding of cybersecurity principles and secure coding practices (Fortify) Experience with continuous integration/continuous deployment (CI/CD) pipelines (Jenkins, GitHub). Understanding of containerization and orchestration technologies (Docker, Kubernetes). Experience with test-driven development (TDD) and automated testing frameworks.
REQUIRED EDUCATION: Bachelor's degree in Computer Science, Software Engineering, or a related technical field.