Sr Software Engineer

Johns Hopkins University

Baltimore, MD

Job posting number: #7111824

Posted: September 27, 2022

Application Deadline: Open Until Filled

Job Description

The Digital Research & Curation Center at Johns Hopkins University is seeking a Senior Software Engineer to help us solve intriguing problems and build innovative software.



The Senior Software Engineer will be responsible for the design, development, support, and evolution of software systems within the Digital Research & Curation Center. This individual will be engaged in architecture, development, testing, operational analysis, maintenance, and support of a variety of software projects. They will be capable of engaging with projects of varying sizes at any stage in the software lifecycle, from building new systems to improving or extending existing applications.



The Senior Software Engineer will provide technical leadership across all phases of software projects including requirements analysis, design, development, testing, deployment, and maintenance. They will provide experienced leadership in the design and development of comprehensive, innovative, and integrated solutions.



This is a remote position working with a fully remote (and fun) team.



Job Scope/Complexity

Responsible for the full life-cycle of software projects that are frequently large, long-term, and/or highly complex. Typically engaged in multiple projects of varying complexities.
Based on expert technical knowledge, skills and experience, develops broad-based solutions involving multiple technologies and architectural components.
Leads overall strategy, design, and architecture for solutions.


Specific Duties & Responsibilities:

Analysis & Requirements Gathering

Work with clients and project teams to define business needs and propose technology solutions and approaches to meet those needs.
Research technical systems, platforms, tools, and approaches to recommend how they may be utilized, tailored, extended, or replaced to meet client needs.


Design & Development

Write functional/technical specifications based on system requirements.
Develop system architecture and design to meet functional, technical, and security requirements.
Define strategy for system data structures, data management, data transfer methods, data flow, and process flow.
Create or enhance software with clear and efficient code using appropriate computer languages, frameworks, and tools.
Provide monitoring, guidance, and direction in design, development, processes, tools, and techniques to more junior staff.
Review work of others on the project team to ensure adherence to functional requirements, sound software development principles, and security best practices.
Coordinate with individuals and teams both inside and outside of Johns Hopkins to collaboratively build open source software.


Testing & Documentation

Create and document test scenarios to validate and verify application functionality.
Document code, software design, and system architecture by creating clear and descriptive comments and diagrams to simplify code maintenance and support.
Author and maintain audience-appropriate documentation to serve as technical and/or end-user references.
Mentor junior staff in testing and documentation tools, approaches, technologies, and best practices.


Deployment

Develop, update, and maintain deployment tooling and appropriate documentation to ensure software can be executed and tested by the project team.
Develop automated deployment strategies in collaboration with operations staff to ensure software is deployed consistently across development, test, and production environments.


Maintenance

Investigate and resolve complex technical issues to ensure systems remain available and responsive.


Minimum Qualifications (Mandatory):

Bachelor’s Degree in Computer Science or related field or equivalent experience.
6+ years of experience developing software systems and applications.
Additional education may substitute for required experience and additional related experience may substitute for required education, to the extent permitted by the JHU equivalency formula.*
Experience developing web applications with Java.
Experience developing with JavaScript (including Node.js, UI frameworks, etc).
Broad experience in the design and implementation of software systems.
Comfortable developing across the full application stack, from backend through UI.
Demonstrated ability to quickly become proficient with new technologies.
Excellent analytical and problem-solving skills.
Excellent written and verbal communication skills.



Apply Now

Please mention to the employer that you saw this ad on DiversityWork.com

More Info

Job posting number:#7111824
Application Deadline:Open Until Filled
Employer Location:Online Job Advertising
JAX,Florida
United States
More jobs from this employer
Close menu