Software Engineer duties including: requirement analysis and specification, architecture and detailed design specification, implementation (coding), integration and test. Product domain areas include:
1) geometric algorithm development;
2) mathematical logical data manipulation;
3) database structure and search algorithm development;
4) human interface and data transport development;
5) Embedded server management applications.
All of our programs require strong knowledge of object-oriented analysis and design methods using Unified Modeling Language, Java or C++.
Development and maintenance of code that integrates software components into a fully functional software system; writing test procedures and documenting test results to ensure software system requirements are met; documentation and maintenance of architectures, requirements, algorithms, interfaces and designs for software systems. Skills and experience in one or more of the following areas is required:
- development of algorithms that require strong background in physics and vector calculus;
- JavaScript, HTML/XML, PHP, XSLT;
- relational DBMS (e.g., Oracle or Sybase);
- domain knowledge of XML content servers Sun Solaris, Linux and Windows;
- troubleshooting common network connectivity issues using an operational understanding of firewalls, IDS's, routers, and switches;
- protocols: TCP/IP stack, UDP, ICMP, DNS, SNMP, XMPP, FTP, HTTP/S, NTP;
- secure sockets communication SSH, SSL, SCP, SFTP;
- PKI: X.509, public key certificates, certification authorities, federated identity;
- perl, python, or shell scripts;
- configuration management and version control using subversion, clearcase, SVN, CVS, or GIT;
- software development using vi editor or Eclipse IDE;
- familiarity with Java spring frameworks and hibernate;
- C++ familiarity with hard real-time/POSIX programming, thread-safe/reentrant functions, Unix networking APIs and inter-process communication;
- secure sockets and encryption using openssl;
- Electrical engineering expertise in signal analysis and/or digital circuit design.
Competencies
General
Adaptability
Tries to understand changes in work-group tasks, situations, and the department as well as the logic or basis for change; occasionally seeks information about changes affecting their individual job. Treats changes and new situations as opportunities for learning or growth; focuses on the beneficial aspects of change; speaks positively about the change to fellow work group members. Quickly modifies behavior to deal effectively with changes in the work environment; readily tries new approaches appropriate for new or changed situations; does not persist with ineffective behaviors.
Communication
Makes an effort to clarify purpose and importance; stresses major points; follows a logical sequence. Tries to keep the audience engaged through use of techniques such as analogies, illustrations, humor, an appealing style, body language, and voice inflection. With guidance from others frames messages in line with audience experience, background, and expectations; tries to use terms, examples, and analogies that are meaningful to the audience. Occasionally seeks input from audience; checks understanding; tries to present message in different ways to enhance understanding. Uses syntax, pace, volume, diction, and mechanics appropriate to the media being used. Interprets messages from others and responds appropriately; at times requires guidance from others on how to respond.
Contributing To Team Success
Occasionally makes procedural or process suggestions to work group members for achieving team goals or performing routine team functions; tries to provide necessary resources or helps to remove obstacles to help the team accomplish its goals; listens to and involves others in team decisions and actions; values and uses individual differences and talents; shares important or relevant information with the team; adheres to the team's expectations and guidelines; fulfills team responsibilities; demonstrates personal commitment to the team.
Managing Work
Has a general sense of more critical and less critical activities and tasks within own work group; adjusts priorities when appropriate. Tries to ensure that required equipment and/or materials are in appropriate locations so that own and others' work can be done effectively. Allocates own time to complete work; tries to coordinate own and others' schedules to avoid conflicts. Has a general understanding of available resources (individuals, processes, departments, and tools) to complete work efficiently. Generally uses time effectively and usually prevents irrelevant issues or distractions from interfering with work completion. Technical
Analytical Skills
Skill and ability to: collect, organize, synthesize, and analyze data; summarize findings; develop conclusions and recommendations from appropriate data sources.
Languages & Databases
Basic familiarity with software programming languages and databases and the ability to apply to the software domain. Programming languages encompass higher order languages, auto-coded languages and assembly languages.
Software Development Tools
Basic familiarity with general and software development and testing tools, capability and usage. Examples include compilers, linkers, debuggers, data analysis tools, graphical user interface builders, post processing tools, requirements management tools, and web authoring tools.
Typical Education/Experience
Bachelor, Master or Doctorate of Science degree from an accredited course of study, in engineering, computer science, mathematics, physics or chemistry. ABET is the preferred, although not required, accreditation standard.
Other Job related information
Candidate must currently possess or be willing to submit to a Single Scope Background Investigation (SSBI) with ability to obtain access to Top Secret and/or Sensitive Compartmented Information (SCI). The position may also require willingness to take and pass a polygraph exam. Local and remote travel to customer sites may be required
*** Please note that depending on the specific position, you may be required to pass additional medical tests, credit checks, and/or other requirements. These additional items are required for the Company to comply with various laws and regulatory rules.***
Every job requisition has specific and unique requirements listed under 'Description', 'Competencies', and 'Education'. Applicants will increase their opportunities for consideration by demonstrating compatibility with these requirements in their resumes.
The job specifications - including competencies (knowledge, skills, abilities, and other characteristics), job-relevant work experience, education, and other requirements described in this requisition - will be the basis for applicant screening, including resume reviews, structured interviews and any other assessments used to support the hiring decision. All candidates considered for this position may be required to participate in a structured interview. The structured interview is a standardized method of evaluating candidates' job-related competencies to support an objective selection and promotion process.
Warning: There is no need to provide your bank details when applying for a job. We strongly advise that jobseekers should never supply any bank account details or any other financial information by email. If you see a vacancy on Flight Jobs, and the advertiser requests bank account details please email
Recruitment.Helpdesk@rbi.co.uk