##### Job Description :
##### **Duties include:**
* Assess user needs and requirements.
* Design and develop applications that may involve sophisticated data manipulation.
* Maintain and update existing programs.
* Troubleshoot and solve technical problems.
* Create programs to meet reporting and analysis needs.
* Design and implement user and operations training programs.
* Document changes in software for end users.
* Follow team software development methodology.
* Serve as technical resource with respect to applications.
* \- Other duties may also be assigned.
##### **KNOWLEDGE, SKILLS AND ABILITIES (REQUIRED):**
* Current knowledge of latest software and design standards.
* Ability to define and solve logical problems for technical applications.
* Knowledge of and ability to select, adapt, and effectively use a variety of programming methods.
* Ability to recognize and recommend needed changes in user and/or operations procedures.
* Basic knowledge of software engineering principles.
* Strong knowledge of at least one programming language.
##### **DESIRED QUALIFICATIONS:**
* Basic understanding of modern web technology and frameworks
* Some experience with Python or Javascript, including JSON
* Working knowledge of git
* Some experience with cloud computing, such as Amazon Web Services
* Experience with Unix
* Experience working in a development team environment
* Basic understanding of standard development practices, such as Agile