This position is in a team of Software Development Engineers. Primary responsibility is to serve as the development team member customizing/configuring products to meet sponsor requirements on a cross functional project team. For each Project Team, the Engineer will be responsible for developing and successfully delivering a project specific highly-interactive mobile-web and other software applications for clinical research data acquisition and data management that is deployed onto Smartphones and Tablets or via the web which are distributed worldwide.
ESSENTIAL DUTIES AND RESPONSIBILITIES:
Develops, deploys and maintains software applications according to the study specifications. Integrates the acquired device data with the backend project specific databases
Participates in decision making of the development life cycle of clinical trial study data collection applications
Contributes to the development of project specifications, PDS templates & improvements, and to the planning and deployment scheduling process
Manages development of complex customized implementations for specific clients through collaboration with cross-functional team members or own specialized skill set
Participates in operational readiness tasks: Pilot projects, internal validation support, experimental development, Kaizen
Maintains coding guidelines and train the less experienced engineers on study development best practices
Provides peer reviews of low, moderate and high complexity code developed by other engineers
Acts as a go-to expert in one area of the codebase; understands the broad architecture of the entire system, mentoring other employees as needed
Understands Core product and anticipates technical issues at the product level and makes architectural and design decisions to avoid them
Writes correct and clean code with guidance; consistently follows stated best practices
Understands and embraces the regulatory requirements of the business
Communicates timelines, scope and technical concerns to internal partners. Communicates technical decisions through presentation, tech talks, and the wiki
Communicates assumptions and gets clarification on tasks up front to minimize the need for rework
Communicates effectively across functions; is able to work well with Designer, Quality, Translations, and PM as necessary
Identifies and proposes strategies around technical problems affecting their team, communicates standards and gets buy-in on solutions
Acts as a negotiator: must be able to reach appropriate resolution on study team issues with timelines, schedules, technical changes, etc.
Fosters a spirit of teamwork and unity among department members that allows for disagreement over ideas, conflict and expeditious conflict resolution, and the appreciation of diversity as well as cohesiveness, supportiveness, and working effectively together to enable each employee and the department to succeed
Helps identify and implement the establishment of tools, new process or enhancements which could increase the efficiency of delivering projects and services
Investigates technical support issues as a last line of defense to resolve technical problems in delivery and/or production. Quickly breaks down complex problems into potential solutions, knowns, and unknowns, in order to get to solid resolutions faster
Is persistent in the face of coding roadblocks; dispatches them efficiently, pulling in others as necessary. Requires minimal direction/oversight
Mentors other new or more junior engineers. May act as project/team lead or technical lead
Researches new technologies to stay abreast of industry trends and standards, makes recommendations to management team. Is able to reflect on and improve skills through appropriate professional development and self development
Takes the initiative to address/escalate issues at critical points in the project lifecycle, resolving issues by offering alternative solutions to design team and project management. Identifies problems/risks of own work and escalates these to the appropriate channel/level
Adheres to relevant ERT Standard Operating Procedures
OTHER DUTIES AND RESPONSIBILITIES:
Competently prioritizes tasks and manages own workload to meet deadlines with minimal supervision
Supports team members by offering help on projects and/or with technical questions
Other special projects as assigned by management
QUALIFICATIONS AND SKILLS NEEDED:
(Key wording should include if degree is needed, any travel requirements, special qualifications needed, skills, etc.)
Education:
- Bachelor's in Computer Sciences, or a related degree, or equivalent experience
Required Skills and Experience:
- Minimum of 5 years of experience in software development
- Able to prioritize multiple projects and work in a fast paced environment with short timelines
Desirable Skills and Experience:
- Working experience and knowledge in writing SQL
- Experience developing software for clinical trials or the pharmaceutical industry
- ASP.Net, C#, Java, iOS , Cordova/Xamarin, C, C++, Android
- Preferred experience in JavaScript ES6, asynchronous calls, CSS, XML, JSON
- Web application development experience
- Experience in IDE, Repository, Issue tracking systems (Visual Studio, Eclipse, GitLab, TFS, JIRA.
- Experience in SW development methodologies; Agile SCRUM, Waterfall, Kanban
The Department Head has the discretion to hire personnel with a combination of experience and education, which may vary from the above listed qualifications.
The duties and responsibilities listed in this job description represent the major responsibilities of the position. Other duties and responsibilities may be assigned, as required. ERT reserves the right to amend or change this job description to meet the needs of ERT. This job description and any attachments do not constitute or represent a contract.
#LI-DNI