at Northwestern University in Evanston, Illinois, United States
Job Description
Job Opening Id: 50289
Department: Education & Social Policy
Salary/Grade: ITS/81
Job Summary:
Headed by Professor Uri Wilensky, Northwestern’s Center for Connected Learning & Computer-Based Modeling (CCL) is looking for a full-time Software Developer to work on NetLogo. If you are a system builder and can design and implement a whole application independently, this position is ideal for you! Under the direction of The Software Developer works in a small collaborative development team in a research group that also includes professors, postdocs, graduate students, and undergraduates, supporting the needs of multiple research projects. A major focus would be on development of NetLogo (in both Desktop and Web form), an open-source modeling environment for both education and scientific research. CCL grants also involve development work on HubNet, NetTango and other associated tools for NetLogo, including research and educational NSF grants involving building, delivering, and assessing NetLogo-based science curricula for secondary schools. NetLogo is the most widely used agent-based modeling software, and has hundreds of thousands of users worldwide using it for both research and education.
Specific Responsibilities:
Development
- Develops and maintains software infrastructure, via patches, bundles, releases and maintenance packs.
- Codes software applications adhering to designs supporting internal business requirements or external user.
- Designs databases and data structures.
- Meets with business analyst/stakeholder to determine requirements.
- Collaborates with and leads the NetLogo development team in designing features for NetLogo, NetLogo Web, NetTango, HubNet and web-based versions of these applications; writes code independently, and in the context of a team of experienced software engineers and principal investigator.
- Interacts with commercial and academic partners to help determine design and functional requirements for NetLogo,; interacts with user community including responding to bug reports, questions, and suggestions, interacting with open-source contributors assessing and merging their contributions. Triages, prioritizes, fixes documents, and communicates on end-user issue reports.