GD Information Technology, Inc. - Annapolis Junction, MD
posted 4 months ago
The position involves designing, developing, troubleshooting, and analyzing complex software programs for computer-based systems. The role requires advising hardware engineers on machine characteristics that impact software systems, such as storage capacity, processing speed, and input/output requirements. The candidate will be responsible for providing inputs for documentation of new or existing programs as needed. The use of object-oriented techniques, programming languages, and standard methodologies, including classic development, waterfall, and agile methods (such as Extreme Programming), is essential. The position also entails performing deployment, installation, maintenance, quality control monitoring, and implementation of software at government-specified locations. Additionally, the candidate will maintain processes to log and track customer service requests and develop software products for various platforms. Proficiency in Configuration Management (CM) tools, such as Subversion/Trac or Git, is required, along with coding in eXtensible Mark-up Language (XML) and W3C XML Schema to C++ Compiler (XSD). The role includes applying middleware technologies, such as enterprise service bus (ESB), CORBA, or Internet Communications Engine (ICE), and using Integrated Development Environments (IDEs) like JBuilder and/or Eclipse. The candidate will design, develop, and document system and subsystem-level code, which 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 testing. The role also involves developing customer requirements into software specifications, maintaining/modifying software code to add new features, correcting errors, adapting to new hardware, or improving system performance. The candidate will integrate with other signal repositories as prioritized by the government and perform system and unit level testing, including test plans and procedures, documentation of test results, and development of special test code. The position requires planning and conducting regression tests after each code modification or upgrade enhancement. The candidate must be proficient with Linux/UNIX and have development experience in C++, JAVA, XML/XSD, scripting languages (Python or Perl), JAVA GUI development, and web frameworks (e.g., Ruby on Rails, Django, SpringFramework, or Zope). The role also includes conducting investigations and tests of considerable complexity, reviewing literature, patents, and current practices relevant to assigned projects, and evaluating vendor capabilities to provide required products or services. The candidate will provide technical consultation to other organizations and interact with project customers and stakeholders to report project status and manage subsystem requirements. Furthermore, the candidate will research, evaluate, and assess software tools and technologies such as Free and Open Source Software (FOSS), Government-off-the-shelf (GOTS), and Commercial-off-the-shelf (COTS), incorporating findings into the overall software system design. The implementation of Service Oriented Architecture (SOA) and middleware technologies, such as ESB, CORBA, Simple Object Access Protocol (SOAP), and ICE, is also part of the responsibilities.