Software Engineer (School of Medicine - Medvitals)
约翰霍普金斯大学医学院正在寻找一个软件工程师来支持 Medvitals 团队。该软件工程師负责创建,实施,维护,性能,生产支持和各种部门和企业范围内的应用系统的文档化。包括但不限于新或升级的应用程序 (包装或本土),操作系统,文件结构,硬件,通信设备和生产力工具的安装,修改和测试。应用分析技术和程序收集然后将业务要求转换为功能/技术规格和设计。通过使用功能规格和设计,生产全部或部分产品。维护数据库和应用系统代码。负责中大型复杂项目的完整生命周期;强大的技术技能;强有力的理解复杂业务流程的能力。基于广泛的技术知识,技能和经验开发解决方案;影响客户到创新/集成解决方案。具体职责与责任 ·下列所列的责任是该职位执行的工作典型例子。· 并非所有分配到这个职位的任务都包含,也不预计每个担任该职位的人将被赋予每一个工作责任。分析和要求收集 ·通过与客户见面来定义复杂的业务/临床/教育问题,以观察和理解当前的流程和相关的问题。提供书面文件,以便与客户和其他 IT 同事分享发现。·通过与顾客见面并研究现有技术来了解业务需求和新应用程序可能解决方案,收集复杂的系统要求。· 通过分析项目范围和复杂项目的里程碑,以确保产品根据软件生命周期标准快速交付。· 从复杂系统要求中写出功能/技术规格,将其编译成程序员和业务分析师用于开发技术解决方案的功能和技术描述。· 用适当的计算机语言/工具来提供技术解决方案,开发/更改数据输入,文件/数据库结构,数据转换,算法和数据输出的方法。
查看英文原文
The Johns Hopkins University School of Medicine is seeking a Software Engineer to support the Medvitals Team. The Software Engineer is 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 homegrown), 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.
Responsible for full life cycle of medium to large sized complex projects; strong technical skills; strong ability to understand complex business processes. Develops solutions based on extensive technical knowledge, skills and experience; influences client towards innovative/integrated solutions.
Specific Duties & 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 & Requirement Gatherings
- Define 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 complex system requirements by meeting with clients and researching existing technology to understand the business requirements and possible solutions for new applications.
Design & Development
- Develop detailed tasks and project plans by analyzing project scope and milestones for complex projects to ensure product is delivered quickly according to software lifecycle standards.
- Write functional/technical specifications from the complex system requirements, putting them into functional and technical descriptions for use by programmers and business analysts to develop technical solutions.
- Develop/change data input, files/database structures, data transformation, algorithms, and data output by using appropriate computer language/tools to provide technical solutions for complex application development tasks.
- 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.
- Provide monitoring and guidance in application design and development to more junior staff.
- Provide thought leadership in designing and developing innovative integrated solutions.
Testing & Documentation
- Create and document complex test scenarios using the appropriate testing tools to validate and verify application functionality.
- Test all changes by using the appropriate complex test scenarios to ensure all delivered solutions work as expected and errors are handled 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 & 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 complex problems by responding as they occur, by reviewing all processing and output of the newly implemented solution, and by proactively ensuring the solution works successfully to satisfy the customer requirements and to provide a smooth transition to the new solution.
- Provide support by investigating and resolving issues, including complex issues to ensure prompt, effective service.
Minimum Qualifications
· Bachelor's Degree (or foreign equivalent) in computer science, computer information systems, information technology, electronic engineering, or a related field.
· Five years of related work experience with computer systems and applications.
· Additional education may substitute for required experience and additional related experience may substitute for required education beyond HS Diploma/Graduation Equivalent, to the extent permitted by the JHU equivalency formula.
Preferred Qualifications
· Knowledge in the assigned application as well as the platform on which it runs.
Technical Skills & Expected Level of Proficiency
- Agile Methodology - Intermediate
- Algorithms - Intermediate
- Application Programming Interface (API) - Intermediate
- CI/CD - Intermediate
- Cloud Serverless Computing Architecture - Intermediate
- Code Review - Intermediate
- Data Architecture and Design - Intermediate
- Data Structures - Intermediate
- Debugging - Intermediate
- Dev Ops - Intermediate
- JIRA - Intermediate
- New Product Development - Intermediate
- Secure Coding - Intermediate
- Service Orientated Architecture - Intermediate
- Software Design Patterns - Intermediate
- Software Development Life Cycle - Intermediate
- Software Engineering - Intermediate
- Unit Testing - Intermediate
The core technical skills listed are most essential; additional technical skills may be required based on specific division or department needs.
Classified Title: Software Engineer
Role/Level/Range: ATP/04/PE
Starting Salary Range: $75,135 - $131,510 Annually (Commensurate w/exp.)
Employee group: Full Time
Schedule: Mon-Fri, 8.30am-5.00pm
FLSA Status: Exempt
Location: Remote
Department name: SOM Admin MedVitals
Personnel area: School of Medicine
Originally posted on Himalayas