Android Developer

Job opening ID

Posting title
Android Developer

Roles and responsibilities
Must be a US Citizen or Green Card Holder
Estimated duration of 6 months with the potential for extension or conversion.
W2 with full benefits
Customer and contract specific training will be required and provided.
Some travel required. 
Labor Category: Engineering Applications Software Engineer IV

Job Description:
You will be a member of the Mission Control Systems Deep Learning Group (393K) and report to the Group Supervisor. You will primarily be an Android application and Android UI developer as requirements are levied. You will also be involved with backend server side software engineer enhancing applications that are deployed to the AWS cloud. This position requires knowledge of NoSQL databases such as MongoDB and Cassandra and graph databases such as JanusGraph or TitanGraph. Your responsibilities will include interfacing with other groups both within and outside of JPL to implement required functionality.
This is primarily a research project and, as such, requirements are often not well defined. You will, with the rest of the team and customers, help refine requirements and implement functionality to satisfy those requirements. The backend server contains 4 components running in docker containers and one running as a JAVA archive (.jar) file running on an Amazon Web Server. You will primarily be involved with modifying and enhancing the JAVA archive using the Scala language but you may be called on to modify other components as well. The Android work consists of an app running on a Samsung Galaxy phone and a UI bridge that communicates to a separate UI running on augmented reality glasses. You will be responsible for modifying and enhancing both the app and UI. Below is only a partial list of tasks that are known. Since this is a research project, priorities and requirements often shift. It is also a reimbursable task which means that all work is done on a level-of-effort basis rather than as hard deliverables.

Android tasks:
• Modify Android controller to detect the existence of previously undiscovered sensors via Bluetooth Low Energy (BLE) connections.
• Modify Android controller to display biometric data ingested from the sensors.
• Modify Android UI to enhance existing map and alerts by enhancing voice recognition and implementing user friendly display.
• Integrate machine learning technologies as provided by data scientists into mobile applications.
Back-end server tasks:
• Implement machine learning algorithms in back-end server by taking prototypes developed by machine learning experts and fitting them into the
existing architecture.
• Deployment of those algorithms to allow existing architecture to work seamlessly with them.
• Add necessary agents to existing back-end agents according to project needs (this is intentionally vague since it is not yet known exactly what is needed. We are actively determining requirements.)

Required Skills:
• Must be a US Citizen or Green Card Holder
• Offer contingent on ability to successfully pass a background check and drug screen
• Programming Languages: Java Mobile & Wearable Programming (Android Platform 4.4 to the latest 9.0), C/C++ programming (Unix, Android NDK, Atmel, Raspberry Pi), C# programming (Desktop, server side), “R” programming for machine learning, Python programming for machine learning
• Development Tools: Android Studio, Eclipse, NetBeans, Microsoft .NET, Microsoft Code
• 1+ year experience developing applications for AI services
• 1+ year experience developing applications supporting wearable sensors
• Project Management Tools: Microsoft Project, GitHub, Wiki

Desired Skills :
• Databases: My-SQL Server Design & Implementation, MS-SQL, SQLite, MongoDB.

Number of positions