The applicant is required to have a good understanding of the software engineering life cycle and should enjoy participating in all aspects of the application development. The position is responsible for translating user requests into programmable functionalities and the use of Agile methods during application development, deployment, and maintenance. New applications and modules will be written in node. js, although maintenance of existing, non-node.js code will be important. The position will also be involved in database design. The position will be expected to utilize version control using git, perform integrated issue and user request tracking and incorporate unit and user acceptance testing practices- familiarity with these practices will be an important part of the applicant selection process. The desire to learn new skills is expected, as is the willingness to share knowledge with other members of the team.
- Development and testing of software applications. This can include integration of research applications with existing databases.
- Software maintenance, refactoring, and enhancement of existing applications.
- Develop standard APIs and shareable libraries for general use.
- Collaborate with other academics in the Center on related projects.
- BS in Computer Science or equivalent education and experience from which similar skills may be acquired
- One to three years working experience in programming, bioinformatics, informatics, or data warehousing
- Programming with a dynamic language such as node.js
- A basic understanding of SQL and database design
- Familiarity with software engineering life cycle and agile methods
- Demonstrated team building skills, ability to work with a ‘virtual community’, strong interpersonal skills and excellent oral and written communication skills.
- One or more year of experience in development projects.
- Familiarity with software versioning tools, especially git
- Experience with database design, application design and building of applications for academic research
- User support and training experience
- Experience in an academic or health care computing environment
- Expertise with SQL and relational data design in Oracle
- Expertise with PostgreSQL or other open source RDBMS
- Expertise with open source (github or CSV) versioning tools
- Working experience with various testing practices such as unit testing, user acceptance testing and regression testing
As per Northwestern University policy, this position requires a criminal background check. Successful applicants will need to submit to a criminal background check prior to employment.
Please send a resume, cover letter, and three letters of recommendation to Mark Begale, c/o Lisette Rubio, Department of Preventive Medicine, 680 N. Lakeshore Drive, Suite 1400, Chicago IL 60611 or electronically to firstname.lastname@example.org.