Job Description
The Software Engineer develops, maintains, and enhances complex and diverse software systems (e.g., processing-intensive analytics, novel algorithm development, manipulation of extremely large data sets, real-time systems, and business management information systems) based upon documented requirements. Works individually or as part of a team. Reviews and tests software components for adherence to the design requirements and documents test results. Resolves software problem reports. Utilizes software development and software design methodologies appropriate to the development environment. Provides specific input to the software components of system design to include hardware/software trade-offs, software reuse, use of Commercial Off-the-shelf (COTS)/Government Off-the-shelf (GOTS) in place of new development, and requirements analysis and synthesis from system level to individual software components.
,
Required Skills
Key Responsibilities
Software Design & Development
Analyze user requirements to derive software design and performance requirements
Design, develop, and modify software systems
Design and code new software or enhance existing software to add new features
Modify existing software to correct defects, improve performance, or adapt to new hardware
Develop and implement algorithms to meet or exceed system performance and functional standards
Design or implement complex algorithms requiring adherence to strict timing, system resource, or interface constraints
Use scientific analysis and mathematical models to predict and measure design outcomes
System Integration & Performance
Integrate existing software into new or modified systems and operating environments
Coordinate software system installation and monitor equipment functioning to ensure operational specifications are met
Analyze system performance standards and investigate problem areas
Confer with users, system engineers, and hardware engineers to determine project limitations, capabilities, interfaces, and performance requirements
Database & Data Management
Develop simple data queries for existing or proposed databases and repositories
Design and implement complex database or data repository interfaces and queries
Testing & Quality Assurance
Assist in developing and executing test procedures for software components
Perform quality control on team products
Debug existing software and correct defects
Documentation & Process Improvement
Write and review software and system documentation
Provide recommendations to improve documentation and software development process standards
Implement process improvement recommendations
Leadership & Oversight
Serve as a team lead appropriate to the software development process being used
Oversee one or more software development teams
Ensure work is completed in accordance with established software development constraints and standards
Required Qualifications
Fourteen (14) years of experience as a Software Engineer (SWE) supporting programs and contracts of similar scope, type, and complexity
Bachelor’s degree in Computer Science or a related discipline from an accredited college or university
Substitution:
Four (4) additional years of SWE experience on projects with similar software processes may be substituted for a bachelor’s degree.
,
About Farfield Systems
Farfield was founded in 2002 by a Marine Corps veteran to provide enterprise and mission support to government customers in Defense and the Intelligence community. We pride ourselves on doing work that matters for our customers' most important missions. From the start, we put our team members first and, over the years, made many changes to better serve them. In turn, they have made our customers truly happy. Isn't that the way it's supposed to work? That's what we mean by “employee driven…customer focused.” That simple phrase defines our culture and our core values.
Farfield maintains the dynamic spirit of a startup. This energy drives us to leverage the full potential of our outstanding team. We concentrate on our fundamental strengths and continuously enhance the value we provide to our customers.