Job Description :
Designs, develops, troubleshoots and analyzes routine, complicated and difficult software programs for computer-based systems.
Advises hardware engineers on machine characteristics that affect software systems, such as storage capacity, processing speed and input / output requirements.
As required, provides inputs for documentation of new or existing programs.
- Use object oriented techniques, programming languages, and standard methodologies, including classic development, waterfall, and agile methods (Extreme programming).
- Perform deployment, installation, maintenance, quality control monitoring, and implementation of software at Government specified locations.
- Maintain processes to log and track customer service requests.
- Maintain / develop software products to be used on a variety of platforms.
- Uses Configuration Management (CM) tools, such as Subversion / Trac or Git
- Codes in eXtensible Mark-up Language (XML) / W3C XML Schema to C++ Compiler (XSD)
- Applies middleware technologies, such as enterprise service bus (ESB), CORBA, or Internet
- Communications Engine (ICE)
- Uses Integrated Development Environments (IDEs), such as JBuilder and / or Eclipse
- Design, develop, and document system and subsystem-level code. This includes support for system requirements, preliminary design, detailed design and specifications, data dictionaries, interface control / design documents, user help information / manuals, maintenance information / manuals, operations information / manuals, program code, quality assurance activities,
- and test.
- Develop customer requirements and information needs into software specifications that can be implemented
- Maintain / modify software code to add new features, correct errors, adapt to new hardware, or to improve system performance.
- Integrate with other signal repositories when prioritized by the Government.
- Perform system and unit level testing. This includes test plans and procedures,
- documentation of test results and development of special test code. Plan / conduct regression tests
- after each code modification, upgrade enhancement.
- Use object oriented techniques, programming languages, and standard methodologies, including classic development, waterfall, and agile methods (Extreme programming).
- Proficient with Linux / UNIX is required.
- Development experience (C++, JAVA, XML / XSD), scripting language experience, (Python or Perl), JAVA GUI development experience and Web framework experience (i.
e. Ruby on Rails, Django, SpringFramework, or Zope) is required
U / FOUO) Performs system and unit level testing. This includes test plans and procedures, documentation of test results and development of special test code.
Plans / conducts regression tests after each code modification, upgrade enhancement.
Develops and applies advanced methods, theories and research techniques in the investigation and solution of complex and advanced software applications and problems.
Conducts, technically directs and evaluates projects or major phases of significant projects, coordinating the efforts of engineers and technical support staff in the performance of assigned projects. Conducts
investigations and test of considerable complexity. Reviews literature, patents and current practices relevant to the solution of assigned projects.
Evaluates vendor capabilities to provide required products or services. Provides technical consultation to other organizations.
- Interacts with project customers and stakeholders to report project status, and manage subsystems requirements.
- Researches, evaluates, and assesses software tools and technologies such as Free and Open Source Software (FOSS), Government-off-the-shelf (GOTS), Commercial-off-the-shelf (COTS), and incorporates those findings into the overall software system design.
- Implements Service Oriented Architecture (SOA) / middleware technologies, such as ESB, CORBA, Simple Object Access Protocol (SOAP), and ICE
Qualifications :
Master's Degree in Computer Science or Computer Engineering from an accredited college or university is required. A bachelor's degree and two (2) additional years of software related experience OR six (6) additional years of software related experience may be substituted for a master’s degree.
Fifteen (15) years experience in software application design and development performing coding, debugging, testing and troubleshooting throughout the application development process.
Twelve (12) years experience leading teams of software design and development for collection systems and components is required.
GDIT IS YOUR PLACE :
Full-flex work week to own your priorities at work and at home
401K with company match
Comprehensive health and wellness packages
Internal mobility team dedicated to helping you own your career
Professional growth opportunities including paid education and certifications
Cutting-edge technology you can learn from
Rest and recharge with paid vacation and holidays
The likely salary range for this position is $92,331 - $154,211. This is not, however, a guarantee of compensation or salary.
Rather, salary will be set based on experience, geographic location and possibly contractual requirements and could fall outside of this range.
Scheduled Weekly Hours :
Travel Required : None
None
T elecommuting Options :
Onsite
Work Location :
USA MD Annapolis Junction