Software Developer (Application App Developer
Role details
Job location
Tech stack
Job description
Develops application software. Writing and implementing efficient code. Research, designs, develops and implements software applications and systems. Involved in planning of system and development deployment as well as responsible for meeting software compliance standards. Evaluates, designs, and implements interface between hardware and software, operational requirements, cloud offering, system architecture, security, and characteristics of overall system. Researching, designing, implementing, and managing software programs. Identifying areas for modification in existing programs and subsequently developing these modifications. Determining operational practicality. Documents testing, client experience and maintenance of system corrections. May partner and collaborate with cyber security teams to ensure compliance with security standards. May develop and conduct unit tests., * This position will focus on Android app development as the primary role, which includes full app capabilities (graphical user interface, underlying models, and analytics). App development may also involve wrapping or refactoring complex physiological and empirical mathematical models developed by researchers in a variety of programming languages (e.g., C, C#, MATLAB) to harden the models for use within the app. Additionally, integrating with overarching systems that enable end-user access to tools from Web Apps and wearables. In addition to developing Android apps, the position will require testing and demonstrating applications to a variety of stakeholders.
Requirements
- A successful candidate will also have previous experience with CAREN systems and DFLOW programming along with motion capture system data structures and creating data analysis pipelines. The candidate will work closely with our research team on various programs as well has help support our STRIVE Center Research Lab as needed by developing efficient solutions to data collection and analysis needs. Candidates should be comfortable in a team environment and interested in developing technologies to improve decision support systems used in critical circumstances in the real world.
Must Have:
- Android and iOS development
- Mobile user interface design principles
- Mobile user analytics
- Relational Databases (e.g., SQLite, MySQL, PostgreSQL)
- JSON and XML data formats
- Arduino, Raspberry PI, and other similar technologies
- AWS Cloud Computing
- Fluent in DFLOW programming and experience with Vicon Nexus software
- Java
- Mathematical modeling
- Scientific computing and data analysis
- Lua
Nice To Have:
- Audio, video, and image processing
- Implementing machine learning models and knowledge of ML training
- Wearable device development/integration
- Knowledge of C, C++, C#, F#, Lua, Java, Kotlin, Scala, Python, Swift, MATLAB programming languages
- Thin-client, browser-based user interface development
- Web Services, JavaScript, TypeScript, Angular, Django, SOAP/REST interfaces
- Socket networking, multi-threaded and concurrent programming
- Linux environments and experience with legacy systems
- PSI Framework
- GIS development
- Healthcare, biomedical knowledge
- Agile development process
- Automation
- Real-time data integration
- Unity development