Jobs · Engineering · Maryland

Software Engineer

Assertive Professionals · Hanover, MD · 1 mo ago
Engineering$145k/yrFull-time

About the role

The Software Engineer develops, maintains, and enhances complex and diverse software systems based upon documented requirements. They work individually or as part of a team, reviewing and testing software components for adherence to the design requirements and documenting test results. They resolve software problem reports and utilize appropriate software development and design methodologies.

Responsibilities

  • Analyze user requirements to derive software design and performance requirements
  • Design and code new software or modify existing software to add new features
  • Debug existing software and correct defects
  • Integrate existing software into new or modified systems or operating environments
  • Develop simple data queries for existing or proposed databases or data repositories
  • Make recommendations for improving documentation and software development process standards
  • Develop or implement algorithms to meet or exceed system performance and functional standards
  • Avoid or assist with developing and executing test procedures for software components
  • Write or review software and system documentation
  • Design, develop, and modify software systems, using scientific analysis and mathematical models to predict and measure outcome and consequences of design
  • Design or implement complex database or data repository interfaces/queries
  • Oversee one or more software development teams and ensure the work is completed in accordance with the constraints of the software development-process being used on any particular project
  • Design or implement complex algorithms requiring adherence to strict timing, system resource, or interface constraints
  • Perform quality control on team products
  • Confer with system engineers and hardware engineers to derive software requirements and to obtain information on project limitations and capabilities, performance requirements and interfaces
  • Coordinate software system installation and monitor equipment functioning to ensure operational specifications are met
  • Implement recommendations for improving documentation and software development process standards
  • Serve as the technical lead of multiple software development teams
  • Select the software development process in coordination with the customer and system engineering
  • Recommend new technologies and processes for complex software projects
  • Ensure quality control of all developed and modified software
  • Delegate programming and testing responsibilities to one or more teams and monitor their performance

Requirements

  • TS/SCI with a Polygraph
  • Bachelor's degree in Computer Science or related discipline from an accredited college or university
  • Four (4) years of additional software engineering experience on projects with similar software processes may be substituted for a bachelor's degree
  • Relevant JAVA programming experience to include at least two years of Java version 1.7+
  • Spring and JavaScript
  • JSP and servlet programming experience
  • JEE and enterprise web application design and development
  • Designing and writing REST-ful applications
  • Ability to create and deploy applications in an Apache Tomcat web server
  • JavaScript presentation libraries such as JQuery, Angular, and extJS
  • Writing Interface Control Documents (ICDs)
  • Microsoft office tools (Word, Excel, Powerpoint)
  • Programming on Linux platforms
  • Using a revision control application such as: git, Subversion (SYN), CVS, ClearCase
  • Generating and documenting design specifications of system-level components in a UML-based tool (e.g. Confluence/GIiffy)
  • Test-driven development
  • Oracle, PL/SQL, and/or mySQL experience
  • Creating hierarchical deployments using Linux "yum" including resolving dependencies and creating and managing yum repositories

Qualifications

  • Experience in programs and contracts of similar scope, type, and complexity at the following levels is required:
  • Level 0: No demonstrated experience is required.
  • Level 1: 7 years
  • Level 2: 14 years
  • Level 3: 20 years

Desired Experience and Qualifications

  • Knowledge of virtualization
  • MongoDB, Apache Camel
  • Perl experience
  • Creating deployment packages using RedHat Package Manager (RPM)
  • Writing software that utilizes SNMP

Pay

ESTIMATED: $145,092 per year

Similar jobs

Software Engineer

RelativityArizona, United States· 1 wk ago
Engineering$79k–$119k/yrapply on kcura.wd1.myworkdayjobs.com

Software Engineer

RelativityOklahoma, United States· 1 wk ago
Information Technology$79k–$119k/yrapply on kcura.wd1.myworkdayjobs.com

Software Engineer

Accenture Federal ServicesChantilly, VA· 2 wk ago
Engineering$130k–$265k/yrapply on boards.greenhouse.io

Software Engineer

BarclaysWhippany, NJ· 1 mo ago
Engineering$190k/yrapply on search.jobs.barclays

Software Engineer

Royal Cyber Inc.Naperville, IL· 26 mo ago
Engineeringapply on royalcyber.zohorecruit.com