Duke University Job Descriptions

Duke Job Postings

To see if there are current openings for any of the job descriptions listed on this web site, please search Duke Jobs.

DHTS DEVELOPER

Job Title: DHTS DEVELOPER
Job Code: 3840
FLSA: E
Job Level: CD
Revised Date: 03/01/2017
Job Family: JF 08

~ Printer-Friendly Version ~

Occupational Summary

The Developer builds and maintains custom business applications by translating software requirements into workable programming code. The Developer is involved in all aspects of the software development lifecycle, including designing, building, testing, implementing and supporting applications using programming languages and development tools.

Work Performed

LEVEL 1:

Develop and deploy application features according to technical specifications.

Follow agreed-upon application development best practices.

Identify inefficiencies in existing application development processes.

Contribute to the development of products within a given technical domain.

Use existing frameworks and tools to develop application code.

Develop and deploy application features according to technical specifications.

Write clean, well-factored code.

Write test cases for all application code.

Troubleshoot problems with existing application code.

Analyze and prototype technical solutions.

Follow established source control and deployment practices to help ensure reliable product releases.

Participate in any of the phases of the software development lifecycle as requested.

Perform other related duties incidental to the work described herein.

LEVEL 2:

In addition to the duties described for the Level 1, the Level 2 will:

Research and promote the adoption of application development best practices that could benefit Duke.

Develop automated solutions to inefficient or repetitive application development tasks.

Contribute to the development of several products within a given technical domain.

Identify frameworks and tools that are best-suited for the task at hand.

Write technical specifications, given functional requirements.

Refactor code to share methods and plug-ins wherever possible.

Research and promote the adoption of automated testing tools and techniques that could benefit Duke.

Diagnose problems with existing application code and develop technical solutions that resolve the problems.

Assist with in-depth analysis of technical problems, suggest short- term and long-term resolutions.

LEVEL 3:

In addition to the duties described for the Level 2, the Level 3 will:

May function as a technical leader, either as a subject matter expert with proficiency in defined area(s) of the profession, or as a generalist, with a broad knowledge of all aspects of the profession.

May function as a team leader, responsible for supporting management in day-to-day personnel oversight and workflow management activities.

May oversee application development over full software lifecycle.

Integrate new application development standards into existing processes.

Architect, design, and develop complex systems that cross technical domains.

Identify gaps in existing frameworks and tools and develop technology solutions to fill that gap.

Develop architectural strategy consistent with Duke goals.

Develop re-useable components/objects/plug-ins that can be shared by multiple apps.

Integrate new testing tools and techniques into existing processes.

Identify systemic issues with the application code base and develop technical solutions that resolve the problems.

Suggest technical solutions to business problems and help develop functional requirements.

Serve as technical leader/advisor in cross-functional teams.

Effectively communicate specific IT issues/solutions to management and business owners.

Required Qualifications at this Level

Education/Training

Bachelor's degree in a related field, or four years of equivalent technical experience required.

LICENSURE/CERTIFICATION:

None required. Preferred certification in development technologies, as appropriate for the position.

Experience

Level 1 - No experience required beyond the minimum education (or equivalency) requirement.

Level 2 - Two years of directly related experience is required.

Level 3 - Four years of directly related experience is required.

Skills

LEVEL 1:

Basic understanding of underlying technologies that support the application.

Working knowledge of source control system (e.g., VSS, TFS, GIT, Subversion).

Demonstrated ability to navigate development environment in a variety of ways (e.g., IDE, command line).

Familiarity with a specific framework.

Familiarity with one high level programming language (e.g., Ruby, Visual Basic, C#, PHP, Phyton).

Basic understanding language-specific data structures (e.g., linked lists, dictionaries, classes and objects).

Ability to leverage standard algorithms and patterns when writing code.

Ability to write good test cases and automated unit tests for all code.

Adherence to agreed-upon coding and naming conventions.

Basic understanding of database concepts, such as normalization, transactions, and simple select statements.

Ability to write code according to given requirements.

Ability to adequately document specific functions, methods, and classes.

Ability to appropriately diagnose and troubleshoot code and tools.

Ability to communicate effectively with peers.

Ability to complete tasks as assigned with close oversight.

LEVEL 2:

In addition to the KSAs described for the Level 1, the Level 2 will demonstrate:

Comprehensive understanding of underlying technologies that support the application.

Comprehensive understanding of the deployment process and methodologies. Extensive knowledge of one or more multiple frameworks and high level programming languages.

Ability to write software that optimizes leverage of the underlying technologies (e.g., Phusion, TCP, sockets).

Comprehensive understanding of common algorithms and patterns and ability to apply them appropriately.

Strict adherence to agreed-upon coding standards.

Demonstrated proficiency in refactoring code and developing reusable functions/objects.

Ability to design systems that span multiple technologies/platforms.

Ability to write technical documentation describing system architecture, including functional and technical specifications.

Demonstrated ability to coach more junior members of the team in a constructive manner.

Ability to complete tasks with minimal oversight that are normal in scope.

LEVEL 3:

In addition to the KSAs described for the Level 2, the Level 3 will demonstrate:

Demonstrated expertise in underlying technologies that support the application.

Demonstrated expertise in deployment and code management processes and tools.

Comprehensive understanding of multiple technologies and frameworks. Ability to select the technology that is best-suited for the task at hand.

Expert programming skills. Ability to write clean, well-factored code.

Ability to plan for and implement complicated changes to production systems.

Ability to write and perform automated functional tests that include load/performance and UI tests.

Comprehensive understanding of and strict adherence to agreed-upon architectural standards. Adheres to industry standards and creates local standards for others to use.

Ability to optimize, troubleshoot, and critique other developers' code.

Has a comprehensive understanding and effective use of encapsulation and object-oriented solutions which will be used to develop reusable libraries and solutions.

Ability to architect, design, document and develop complex systems that integrate internal and external components and include monitoring, reporting, failover, load balancing, etc.

Ability to diagnose and fix systems with limited prior exposure.

Ability to diagnose problems at many technological layers (hardware and up).

Ability to proactively identify areas of weakness and write tools to avoid future problems.

Ability to prepare and present technical information and documentation to a range of audiences in both simple and technical terms, depending on the context, in an unambiguous manner.

Respected technical expert and leader, known for his/her extensive knowledge and perpetual initiative.

Ability to complete large scope tasks with minimal oversight and direction.

Able to direct and oversee the work of Level 1 and Level 2 Developers from a technical perspective to maintain project timelines and deliverables.


The intent of this job description is to provide a representative and level of the types of duties and responsibilities that will be required of positions given this title and shall not be construed as a declaration of the total of the specific duties and responsibilities of any particular position. Employees may be directed to perform job-related tasks other than those specifically presented in this description.


Duke University is an Affirmative Action/Equal Opportunity Employer committed to providing employment opportunity without regard to an individual's age, color, disability, gender, gender expression, gender identity, genetic information, national origin, race, religion, sex, sexual orientation, or veteran status.

Duke aspires to create a community built on collaboration, innovation, creativity, and belonging. Our collective success depends on the robust exchange of ideas-an exchange that is best when the rich diversity of our perspectives, backgrounds, and experiences flourishes. To achieve this exchange, it is essential that all members of the community feel secure and welcome, that the contributions of all individuals are respected, and that all voices are heard. All members of our community have a responsibility to uphold these values.


Essential Physical Job Functions

Certain jobs at Duke University and Duke University Health System may include essential job functions that require specific physical and/or mental abilities. Additional information and provision for requests for reasonable accommodation will be provided by each hiring department.