Software Engineer Associate

Overview

On Site
Full Time

Skills

Application Development
Database Design
Evaluation
Feasibility Study
Computer Hardware
Business Process
Problem Analysis
Information Systems
Web Services
API
Data Processing
Machine Learning (ML)
Attention To Detail
Organized
Accountability
Computer Vision
C++
Arduino
Interfaces
Algorithms
Research
FOCUS
Extract
Transform
Load
ITIL
Software Development Methodology
Technical Drafting
User Guides
Quality Control
Testing
Debugging
Emerging Technologies
Training
Teaching
Computer Science
Robotics
Electrical Engineering
Python
NumPy
Pandas
OpenCV
OOAD
Agile
Scrum
Information Technology
Software Development
Communication
Conflict Resolution
Problem Solving
Microsoft Windows
HTML5
Css3
Cascading Style Sheets
Responsive Design
JavaScript
jQuery
Bootstrap
AngularJS
Microsoft Visual Studio
Web Development
Mobile Applications
Cloud Computing
mvc
Microsoft SQL Server
Management
SQL
Object-relational Mapping
Entity Framework

Job Details

Overview

GENERAL SUMMARY OF POSITION:

Under the direction of the Director or designee, the Associate Software Engineer functions in all phases of applications development. This position assists with analysis of user needs, software and database design, programming and life cycle development of all business and clinical applications. The Software Engineer - Associate will work with other engineers in the design and development of software applications that support the demands of UMMS academic, research and business needs. They may also participate in the evaluation and research of 3rd party software and conduct feasibility studies to determine appropriate solutions. \Performs duties in a manner consistent with a complex, diverse, dynamic hardware and software environment and serves a complex medical/education community. This position requires a developer that is in touch with new trends and is familiar with rapid development. The position requires individuals to be detail oriented, organized, independent, responsible and accountable.

Responsibilities

MAJOR RESPONSIBILITIES:

  • Participate in code reviews, support business processes, and assist in problem analysis and consultation.
  • Follow Agile/ITIL/SDLC methodology, including assisting with inspections and post implementation reviews required.
  • Contribute to technical design, code, testing, and debugging efforts.
  • Participate in the development and maintenance of proper technical and user documentation for each system in a consistent and structured manner.
  • Ensure quality control through testing and debugging software for accuracy, completeness, and system integrity.
  • Interact effectively and professionally (verbally, written, etc.) with users, customers, vendors and management to ensure delivery and use of application is consistent with agreed upon project goals.
  • Development of skills and expertise in present and emerging technologies by participating in formal training when possible and by independent self-teaching and tutorials.
  • Perform other duties as required.

Qualifications

REQUIRED QUALIFICATIONS:

  • Bachelor's Degree in Information Systems, Computer Science, a related field, or equivalent experience
  • 0-2 years of related experience
  • Experience with development/software frameworks, and SDLC methodologies
  • Object-oriented analysis, design and programming skills
  • Experience working in / Knowledge of Agile/Scrum framework
  • Solid interpersonal skills, with ability to work well with people of all levels of information technology expertise and comfort in varied organizational relationships.
  • Understanding of web services and API's
  • Experience using modern development processes/tools and developing through the complete Software Development Life Cycle.
  • Excellent verbal and written communication skills required.
  • Excellent problem solving skills required.

Additional Information

GENERAL SUMMARY OF POSITION:

The Thyme lab uses zebrafish as a model system to understand mechanisms of learning, model neurodevelopmental disorders, and conduct possible drug treatments. In this role, the Software Engineer Associate will work alongside researchers to develop and optimize software solutions that support our lab, ranging from large-scale data processing pipelines to computer vision algorithms for animal behavior tracking to machine-learning for computational drug discovery. This position requires a developer that is in touch with new trends and is familiar with rapid development. The position requires individuals to be detail oriented, organized, independent, responsible and accountable.

In the Thyme lab, we use computer vision algorithms to track animal behavior (Python, OpenCV, C++) and build new methods of computational drug discovery (C++). We also desire the capability to build new stimulus-control software for behavior boxes (Arduino, interfaces with cameras and electrical boards). Appropriate degrees include electrical engineering, robotics, and computer science.

MAJOR RESPONSIBILITIES:
  • Develop algorithms and software frameworks to enhance research capabilities in the lab's focus areas.
  • Build and optimize data pipeline for processing large datasets and ensure robust integration with other lab systems.
  • Follow Agile/ITIL/SDLC methodology, including assisting with inspections and post implementation reviews required.
  • Contribute to technical design, code, testing, and debugging efforts.
  • Participate in the development and maintenance of proper technical and user documentation for each system in a consistent and structured manner.
  • Ensure quality control through testing and debugging software for accuracy, completeness, and system integrity.
  • Development of skills and expertise in present and emerging technologies by participating in formal training when possible and by independent self-teaching and tutorials.
  • Perform other duties as required.

REQUIRED QUALIFICATIONS:
  • Bachelor's Degree in Computer Science, Robotics, Electrical Engineering, a related field, or equivalent experience
  • 0-2 years of related experience
  • Proficiency in Python, including familiarity with NumPy, Pandas, and OpenCV.
  • Object-oriented analysis, design and programming skills
  • Experience working in / Knowledge of Agile/Scrum framework
  • Solid interpersonal skills, with ability to work well with people of all levels of information technology expertise and comfort in varied organizational relationships.
  • Experience using modern development processes/tools and developing through the complete Software Development Life Cycle.
  • Excellent verbal and written communication skills required.
  • Excellent problem-solving skills required.

PREFERRED QUALIFICATIONS:

0-2+ years demonstrated experience with multiple technology disciplines: including windows environment
  • HTML5, CSS3, responsive design, Javascript (including jQuery, bootstrap, AngularJS)
  • Experience with Visual Studio 2013/2015 Team System.
  • Development experience with Web development and Mobile Apps
  • Experience with cloud technologies and services.
  • Experience with MVC Development
  • Experience with SQL Server database management, SQL coding and Object Relational Mapping tools such as Entity Framework
Employers have access to artificial intelligence language tools (“AI”) that help generate and enhance job descriptions and AI may have been used to create this description. The position description has been reviewed for accuracy and Dice believes it to correctly reflect the job opportunity.