Loading...
Share this Job
Job Req ID:  56039

Sr. Software Engineer

The Technology Innovation Center (TIC) is uniquely positioned within Johns Hopkins to help design, build, deploy and analyze novel enterprise, departmental, and clinical applications that strive to improve workflow, outcomes, and patient care. Our applications focus on turning data and algorithms into useful visualization tools, improving workflows such as patient hand-off, rounding, and cross-team collaboration, and helping patients with medication adherence, data gathering, and overall clinical education. Our team frequently works with data from multiple sources including our Enterprise EMR (Epic), researcher curated data, and other IT systems. The applications we design, build, and support are critical to our healthcare operations and require high-availability, 24/7 monitoring, and on-call support.

 

Our development languages & frameworks include:

Our platforms include:

Our database technologies include:

Our DevOps and CI/CD stack include:

  • Java
  • Spring / Spring Boot
  • AngularJS
  • Swift
  • Grails
  • Azure
  • iOS & Android
  • On-premise Windows & Linux
  • AWS

 

  • Microsoft SQL Server
  • MySQL
  • MongoDB
  • Azure DevOps
  • Atlassian Tools
  • Artifactory

 

Focus and Responsibilities of this Position

We are looking for a Sr. Software Engineer to join our inHealth Precision Medicine team. The position has several responsibilities including supporting our research data catalog, collaborating with various centers of excellence, and improving our precision medicine analytics platform. All projects include working with our design and analytics teams; development of new solutions, bug fixes, and enhancements; testing; documentation; and support.

Senior Software Engineer Requirements

  • Full Stack Development
    • Experience leading the design, build, and implementation of at least one enterprise application
    • Experience leading the design, build, and implementation of at least four mid-sized applications
  • Familiarity with cross-platform development tools and techniques
  • Experience leading a variety of multi-person projects simultaneously
    • Comfortable switching gears depending on business requirements
  • Expertise with production use of 3-4 development languages and/or frameworks
  • Experience taking ownership of four or more established applications
  • Experience setting up development operations (DevOps) for projects (four minimum)
    • Experience with CI/CD tooling (e.g. Bamboo), build tools (e.g. Maven, Gradle, npm), and associated process automation for at least five applications
    • Familiarity with Git workflows such as Gitflow, feature branching, and forking
  • Experience with RESTful API concepts and developing distributed software systems for at least five applications
  • Experience presenting to customers, leadership, and other technical groups or associations
  • Ability to establish priorities, work independently, and proceed with objectives without supervision
  • Desire to provide technical leadership to teammates through coaching and mentorship
  • One or more technical degrees from an accredited university
  • Bonus: Software engineering experience in the healthcare IT

Bonus: Experience with data visualization and algorithm implementation

 

 

 

 

General Position Summary:
Responsible for the creation, implementation, maintenance, performance, production support and documentation of various departmental and enterprise-wide application systems. This includes but is not limited to the installation, modification, and testing of new and/or upgraded applications (packages or home grown), operating systems, file structures, hardware, communication devices, and productivity tools. Applies analysis techniques and procedures to gather and then translate business requirements into functional/technical specifications and designs.  Using functional specifications and designs, produces all or part of the deliverables. Maintains databases and application system code.  

 

Job Scope/Complexity:

Responsible for full life-cycle of large/long-term highly complex projects. Typically manages multiple projects of varying complexities.  Based on expert technical knowledge, skills and experience, develops broad-based solutions involving multifaceted technologies, and business processes.  Leads overall strategy, design & architecture for solutions. 

 

Job Responsibilities:

The responsibilities listed below are typical examples of the work performed by this position. Not all duties assigned to this position are included, nor is it expected that everyone in this position will be assigned every job responsibility.

 

ANALYSIS AND REQUIREMENTS GATHERING

  • Define highly complex business/clinical/education problems by meeting with clients to observe and understand current processes and the issues related to those processes.  Provide written documentation of findings to share with the client and other IT colleagues.
  •  Gather highly complex system requirements by meeting with clients and researching existing technology to understand the business requirements and possible solutions for new applications.

 

DESIGN AND DEVELOPMENT

  • Develop detailed tasks and project plans by analyzing project scope and milestones for highly complex projects in order to ensure product is delivered in a timely fashion according to software lifecycle standards.  Direct lower level staff by reviewing tasks and milestones for adherence to quality of deliverables.
  • Write functional/technical specifications from the highly complex system requirements, putting them into functional and technical descriptions for use by programmers and business analysts to develop technical solutions. Direct lower level staff by reviewing their completed work.
  • Develop/change data input, files/database structures, data transformation, algorithms, and data output by using appropriate computer language/tools to provide technical solutions for highly complex application development tasks.  Direct lower level staff by reviewing their work.
  • Document code and associated processes by adhering to development methodologies, adding code comments and appropriate documentation to various knowledge-base system(s) to simplify code maintenance and to improve support.  Direct lower level staff by reviewing their work.
  • Provide monitoring and guidance in application design and development to more junior staff.  Give direction and leadership in techniques and tools to lower level staff.
  • Provide experienced leadership for strategic planning in designing and developing comprehensive innovative integrated solutions.

 

TESTING AND DOCUMENTATION

  • Create and document highly complex test scenarios using the appropriate testing tools to validate and verify application functionality.
  • Test all changes by using the appropriate highly complex test scenarios to ensure all delivered solutions work as expected and errors are handling in a meaningful way.
  • Author and maintain documentation by writing audience-appropriate materials to serve as technical and/or end-user references.
  • Mentor junior staff in testing tools and technologies by reviewing their work.

 

IMPLEMENTATION AND MAINTENANCE

  • Implement changes by adhering to the change management policies and procedures for any given project to communicate to all parties the nature, significance, and risk factors of the solution.
  • Monitor changes and resolve highly complex problems requiring the highest level of technical expertise by responding as they occur, by reviewing all processing and output of the newly implemented solution, and by proactively ensuring the solution works successfully in order to satisfy the customer requirements and to provide a smooth transition to the new solution.
  • Provide support by investigating and resolving highly complex issues to ensure prompt, effective service.

 

Required Education:

  • Bachelor's degree (or foreign equivalent) in Computer Science, Computer Information Systems, Information Technology, Electronic Engineering, or a related field.

 

Required Experience:

  • Six years of related work experience with computer systems and applications.
  • Additional education may substitute for experience.
  •  30 undergraduate degree credits or 18 graduate degree credits = 1 year of experience. For jobs where equivalency is permitted, up to two years of non-related college coursework may be applied towards the total minimum education/experience required for the respective job.

 

Preferred Job Qualifications:
Knowledge in the assigned application as well as the platform on which it runs.

 

Knowledge, Skills, & Abilities (KSA’s):

  • Must possess all requisite knowledge, skills, and abilities as posted in the supplemental section.
  • Must demonstrate strong critical thinking and analytical reasoning skills.
  • Ability to work on multiple priorities effectively.
  • Ability to prioritize conflicting demands.
  • Ability to execute assigned project tasks within established schedule.
  • Ability to work collaboratively in a team environment.
  • Ability to communicate effectively in the service of users and colleagues.
  • Writes and communicates clearly and concisely.
  • Possesses sound documentation skills.
  • Ability to maintain confidentiality

 

 

 

Classified Title: Sr. Software Engineer 
Working Title: Sr. Software Engineer 
Role/Level/Range: ATP/04/PF 
Starting Salary Range:$80,664- $110,880, commensurate with experience
Employee group: Full Time 
Schedule: Mon-Fri 8am-5:30pm 
Exempt Status: Exempt  
Location: 04-MD:School of Medicine Campus 
Department name: 60007476-IT@JH Technology Innovation Center 
Personnel area: University Administration

 

The successful candidate(s) for this position will be subject to a pre-employment background check.

 

If you are interested in applying for employment with The Johns Hopkins University and require special assistance or accommodation during any part of the pre-employment process, please contact the HR Business Services Office at jhurecruitment@jhu.edu. For TTY users, call via Maryland Relay or dial 711.

 

The following additional provisions may apply depending on which campus you will work.  Your recruiter will advise accordingly.

 

During the Influenza ("the flu") season, as a condition of employment, The Johns Hopkins Institutions require all employees who provide ongoing services to patients or work in patient care or clinical care areas to have an annual influenza vaccination or possess an approved medical or religious exception. Failure to meet this requirement may result in termination of employment.

 

The pre-employment physical for positions in clinical areas, laboratories, working with research subjects, or involving community contact requires documentation of immune status against Rubella (German measles), Rubeola (Measles), Mumps, Varicella (chickenpox), Hepatitis B and documentation of having received the Tdap (Tetanus, diphtheria, pertussis) vaccination. This may include documentation of having two (2) MMR vaccines; two (2) Varicella vaccines; or antibody status to these diseases from laboratory testing. Blood tests for immunities to these diseases are ordinarily included in the pre-employment physical exam except for those employees who provide results of blood tests or immunization documentation from their own health care providers. Any vaccinations required for these diseases will be given at no cost in our Occupational Health office.

 

Equal Opportunity Employer
Note: Job Postings are updated daily and remain online until filled. 

 

EEO is the Law
Learn more:
https://www.eeoc.gov/sites/default/files/migrated_files/employers/poster_screen_reader_optimized.pdf

School of Medicine - East Baltimore Campus