Job Details
Software Engineer
Description
Job Description:
Job Summary
The Software Engineer will perform software development activities as a member of an agile development team. Development includes the full range of turning agile stories into implementable concepts, through development, testing and deployment of the new capabilities in this complex system. Following the BDD pattern, our developers are responsible for implementing robust testing leveraging DEVOPS automation and, where appropriate, use of test automation commercial tools. There are a range of opportunities for server side business logic implementation as well as client web application and user interface (UI) development. Java, Python, embedded C/C++, Java cryptographic framework, XML, web UI and special purpose device programming opportunities are available.
Primary Responsibilities
The Software Engineer will be responsible for software development activities both individually and as a member of an agile team. The software engineer will actively participate in program increment planning and related team activities. The individual will analyze and study complex system requirements, use design software tools, provide support using formal specifications, data flow diagrams, and other accepted design techniques with the use of Computer Aided Software Engineering (CASE) tools and will use sound software engineering principles to ensure that developed code is modifiable, efficient, reliable, understandable, fault tolerant, and reusable. The individual will provide software process management and control throughout the coding portion of the software development process. Additionally, the individual will promote code reuse and cross-program collaboration while reducing maintenance costs by creating common functions and shared actions for developers and testers. The individual will engineer, author, tune and document automation scripts in a development environment and deploy to the test/production bench.
Basic Qualifications
- BS and 4 – 8 years of prior relevant experience or Masters with 2 – 6 years of prior relevant experience.
- Must have an active TS/SCI with Polygraph to be considered for this role.
- Additional experience may be substituted for a Degree.
- Must have demonstrated experience with Java.
- Experience or familiarity with multiple the following: Java/JEE, Python, C/C++, SQL, SOAP, WSDL, WADL, PERL, PowerShell, VBS, Eclipse, Postgres, Oracle, Jenkins on a Windows platforms.
- Experience with User Interface development, knowledge of databases and structures, and/or experience working with XHTML, HTML, XML, XSLT
- Experience developing on Windows, and/or Linux operating systems
- Must have a strong understanding of sound software development principles and practices
- Must be able to plan and prioritize personal tasking and be able to communicate effectively verbally and in writing
- Must be an independent thinker, capable of performing high quality work, both independently and with a team in a fast-moving environment
Preferred Qualifications
- Experience with the following: JEE, SQL, application servers (Tomcat, WebLogic, JBoss), scripting
- Experience with high level requirements management including requirements decomposition, secure systems engineering and development, trade-off analysis, interface control, and testing and continuous integration
- Experience in software development on Agile teams using Agile Developer practices such as Pair Programming, TDD, Refactoring, and ATDD
- Experience with FITNesse, Mockito, Cucumber, Unified Functional Tester (UFT), Selenium
- Experience with Behavior Driven Development (BDD)
- Secure Software development (i.e. Layer 7 Policy)
- Experience with the Scaled Agile Framework (SAFe) methodology, SAFe Agilest Certification, or past experience as a member of an agile team
careers.leidos.com/css20k
CSSKEY
CONMD
careers.leidos.com/CONMD