University of Rochester Senior Software Engineer - 234299 in Rochester, New York
Senior Software Engineer Job ID 234299Location Medical Faculty Group Full/Part Time Full-Time Favorite Job Regular/Temporary Regular Opening
Full Time 40 hours Grade 055 Health LabSchedule
8 AM-4:30 PMResponsibilities
Responsible for designing, developing and maintaining homegrown software solutions. Performs all aspects of the software development life cycle including requirements gathering, system architecture and planning, development, testing, documenting, deployment, training, and maintenance.
Applies knowledge of a variety of different hardware and software tools available and chooses the appropriate tools for the job. Excels at taking software from the development phase into production.
Serves as the project leader on multiple projects and updates the project director on completed tasks, project statuses, and project timelines. Performs analysis and programming addressing challenging tasks supporting team processes. Supervises a small team of software engineers to ensure that projects are completed on time and to specification.
Project Development and Testing
Creates solutions based on gathered requirements
Establishes coding standards and adheres to those standards
Provides coding standards to team; documents code according to standards
Integrates necessary frameworks and interfaces
Effectively tests code to produce stable results that match specifications
Design and Integration
Independently researches and tests coding techniques
Determines what resources will be necessary, i.e. databases, storage, servers
Analyzes how new solutions interact with other systems
Designs interfaces that are easily adapted into other projects
Maintenance and Upgrades
Recommends modifications based on experience with a program’s users or experience with coding challenges/bugs
Determines the scope of the upgrade
Handles complex software issues and bugs at both a project and framework level
Communicates changes and impact with users
Deployment and Training
Determines and prepares a deployment strategy that will have minimal impact on existing systems
Determines appropriate communication method(s) and communicates deployment schedule and impact with users
Configures database and web serves to the project’s specification
Regression tests all affected systems after deployment to determine success
Trains users on solutions
Management and Supervision
Supervises a small team of software engineers
Develops detailed work plans for employees’ assigned projects and assesses progress
Provides leadership, supervision and coaching to staff. Assists the Project Director in managing the HR needs of the department and staff including, but not limited to: approving hiring decisions, training, ongoing supervision, personnel issues and actions, and conducts performance reviews.
Works with other staff members and end users to understand their requirements and goals with new software or upgrades to existing software
Determines project scope, including capabilities and timeframe
Complies notes to share with the team
Other duties as assigned
Bachelor's degree in related discipline such as Computer Science, Business, Mathematics, Statistics, Science or Engineering required;
Master’s Degree preferred.
4-5 years of related experience required;
2-3 years in a supervisory capacity preferred;
or equivalent combination of education and experience required.
4 years or more of experience with web programming languages such as ASP.NET/C# or equivalent (PHP, Java, Python, Ruby or Node.js) preferred.
4 years or more of experience with a modern DBMS such as Microsoft SQL or equivalent (Oracle, MySQL, MongoDB, Redis) preferred.
Experience with web server, web services and source control required.
How To Apply
All applicants must apply online.
EOE Minorities/Females/Protected Veterans/Disabled