Software Engineer Level 2 w/ 14 years experience
Onyx Point
- Hanover, MD
- Permanent
- Full-time
- Experience w/Java 8
- Experience w/Maven
- Experience w/Git, Gitlab
- Experience w/JUint testing and Code coverage)
- Knowledge of Confluence, JIRA or similar
- Requirements gathering, documentation and work-flow
- Product result driven / problem resolution ability
- Experience with MapReduce
- Experience with Data Science
- Experience with Graph Algorithms
- Experience with Machine Learning
- Experience with AWS
- Cloud development experience such as Hadoop, Big Data (Cloudbase/Accumulo and Big Table) as well as JSON/BSON
- Experience with analytic development
- Experience with Python and streaming capabilities
- Experience with Software Configuration Management Tools such as JIRA, GIT, Confluence and Agile Methodologies
- Experience w/Linux
- Experience w/the analytic compliance process
-Cloud Experience: Shall have three (3) years demonstrated work experience with distributed scalable Big Data Store (NoSQL) such as Hbase, CloudBase/Accumulo, Big Table, etc.; Shall have demonstrated work experience with the Map Reduce programming model and technologies such as Hadoop, Hive, Pig, etc.; Shall have demonstrated work experience with the Hadoop Distributed File System (HDFS); Shall have demonstrated work experience with Serialization such as JSON and/or BSONQualifications
-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
-Provide recommendations for improving documentation and software development process standards
-Develop or implement algorithms to meet or exceed system performance and functional standards
- Assist with developing and executing test procedures for software components
- Write or review software and system documentation
- Develop software solutions by analyzing system performance standards, confer with users or system engineers; analyze systems flow, data usage and work processes; and investigate problem areas
-Serve as team lead at the level appropriate to the software development process being used on any particular project
- Modify existing software to correct errors, to adapt to new hardware, or to improve its performance
-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