Reflexive Concepts is seeking a skilled Cloud Software Engineer to join our team!
Specifically, we are looking for a Cloud Software Engineer with expertise in Big Data, Hadoop Ecosystem, Java, and Distributed Computing to develop, maintain, and enhance large-scale cloud-based back-end processing, analytics, and indexing systems.
Qualifications:
- Eight (8) years of experience as a SWE in programs and contracts of similar scope, type, and complexity; two (2) years of which must be in programs utilizing Big-Data Cloud technologies and/or Distributed Computing
- Bachelor's degree in Computer Science or related discipline from an accredited college or university
- Four (4) years of cloud software engineering experience on projects with similar Big-Data systems may be substituted for a bachelor's degree
- Master in Computer Science or related discipline from an accredited college or university may be substituted for two (2) years of experience
- Cloudera Certified Hadoop Developer certification may be substituted for one (1) year of Cloud experience
Required Skills:
- Experience with at least a subset of the following:
- DevOps
- Elasticsearch
- NiFi
- Python
- Java/Spring Boot
- Angular
- The following Cloud-related experiences are required:
- Two (2) years of Cloud and Distributed Computing Information Retrieval (IR)
- One (1) year of experience with implementing code that interacts with implementation of Cloud Big Table
- One (1) year of experience with implementing code that interacts with implementation of Cloud Distributed File System
- One (1) year of experience with implementing complex MapReduce analytics
- One (1) year of experience with implementing code that interacts with Cloud Distributed Coordination Frameworks
- Experience in Computer Network Operations:
- Utility Computing
- Network Management
- Virtualization (VMWare or VirtualBox)
- Cloud Computing 2
- Multi Node Management and Installation: Management and installation of Cloud and Distributed Computing on multiple nodes, Python, CFEngine, Bash, Ruby or related technologies
- Experience in Information Assurance:
- Securing Cloud Based and Distributed applications through industry standard techniques such as Firewalls, PKI Certificate and Server Authentication with experience in Corporate authentication service(s)
- Experience in Information Technology:
- Object Oriented Design and Programming, Java, Eclipse or similar development environment, MAVEN, RESTful web services
- Cloud and Distributed Computing Technologies: at least one or a combination of several of the following areas - YARN, J2EE, MapReduce, Zookeeper, HDFS, HBase, JMS, Concurrent Programming, Multi-Node implementation/installation and other applicable technologies
- Cloud and Distributed Computing Information Retrieval: at least one or a combination of several of the following areas - HDFS, HBASE, Apache Lucene, Apache Solr, MongoDB
- Ingesting, Parsing and Analysis of Disparate Data-sources and formats: XML, JSON, CSV, Binary Formats, Sequence or Map Files, Avro and related technologies
- Aspect Oriented Design and Development
- Debugging and Profiling Cloud and Distributed Installations: Java Virtual Machine (JVM) memory management, Profiling Java Applications
- UNIX/LINUX, CentOS
- Experience in SIGINT:
- Experience with at least one SIGINT collection discipline areas (FORNSAT, CABLE, Terrestrial/Microwave, Overhead, and ELINT)
- Geolocation, emitter identification, and signal applications
- Joint program collection platforms and dataflow architectures; signals characterization analysis
- Experience with Other:
- CentOS, Linux/RedHat
- Configuration management tools such as Subversion, ClearQuest, or Razor
Desired Skills:
- Provide in-depth knowledge of Information Retrieval; assisting the software development team in designing, developing and testing Cloud Information Retrieval
- Implement complex workflows that manage Cloud MapReduce analytics
- Implement code that interacts with Cloud Distributed Coordination Frameworks
- Oversee one or more software development tasks and ensures the work is completed in accordance with the constraints of the software development process being used on any particular project
- Make recommendations for improving documentation and software development process standards