Positions and Research Opportunities


Ongoing Undergraduate Positions


Seeking Student front end developers (good pay, course credit or work study)
Description We are looking for an ambitious and skilled front end developer to aid in the development of an interactive online learning platform specifically designed for younger learners of the widely used NetLogo agent-based modeling environment, created and maintained by our lab. The requirements for this position are strong web programming abilities and the desire to take the leadership of the content creation and the implementation of the project. Tasks will include: - developing the project in HTML5 + Javascript + CSS - developing a simple content management system for future content updates

Seeking Student Web Developer (good pay or work study)
Description We are looking for a talented web developer to help us upgrade the NetLogo website's technology and user experience. We want you to help us deliver a better site for our users that is easier for our lab to maintain while learning new technologies and growing your skills. This job involves upgrading the content and design of the website as well as building a small web application. This position requires web programming skills (HTML, CSS, JS). Ideal candidates will have experience in one of the following areas: web design, web development (any language, python preferred), or website administration (any platform).

Seeking Student developers (good pay, course credit or work study)
Description Seeking Student developers (good pay, course credit or work study) We are looking for an ambitious and skilled software developer to aid in the development of our growing web app for scientific simulations: NetLogo Web. This project is a browser-based reimagining of the original NetLogo application, which our lab created several years ago and has gone on to become a widely-used modeling tool within the realms of science education and scientific research worldwide.
See more details.
NetLogo Web is an open source project, available on GitHub for all to see and experiment with (https://github.com/NetLogo/Galapagos, https://github.com/NetLogo/Tortoise), being worked on by professional software developers and students with a love for functional programming.
The only requirements for this position are strong programming abilities and the desire to work on a large, ambitious web application that pushes the boundaries of what is possible on the modern web. Tasks will be chosen based on the applicant's areas of interest, be they in the JavaScript-based simulation engine, the compiler written in Scala, or the HTML5-based web client.
More-specific examples of tasks that one might choose include:
Implementing language primitives to allow new simulation behaviors
Adding the ability to export a simulation's state and resume it at a later time
Implementing "multiplayer" simulations, where multiple people on different computers are controlling the same simulation
Performing optimizations of the compiler or simulation engine in order to speed up simulations
Allowing the construction of NetLogo programs through a blocks-based programming environment
Providing a GUI for inspecting individual agents within the simulation
Improving the NetLogo Web code editor to provide advanced IDE features like automatic refactorings
However, these are only examples and are not the only options available. The applicant will be able to choose what to implement and will be given the mentorship of the other developers along the way. Since NetLogo Web is still a young project, there is a lot of room to both have a large impact on the future of the project and to perform creative work in all areas.
Hide details.

NetLogo models library Integration manager (Course credit or work study)
Description: The NetLogo models library consists of hundreds of agent-based models and is in use by hundreds of thousands of users worldwide. This job entails coordinating a team of students to manage the model integration into the library. Candidate models are reviewed for style, clarity and importance, sent through a checkout process and eventually promoted to the library. This is also a good opportunity to learn about the emerging sciences of complex dynamic systems.
See more details.
Beginning Fall 2015
This position can be undertaken either for pay (part time, work-study or regular, minimum of 10 hours/week) or for C99 course credit.
Qualifications: Preference given to those who already know and have a facility with the NetLogo software, though fast learners will also be considered.
Hide details.

Curriculum Developer (Course credit or work study)
Desctiption: This position provides an opportunity to join a dynamic team of programmers, researchers and educators in a project sponsored by the National Science Foundation at Northwestern's new Center for Connected Learning and Computer-Based Modeling. The project mission is to develop a network of handheld computers and graphing calculators that can be used in math and science classrooms. The main use of this network, called HubNet, is to help students to understand the dynamics of complex systems through engaging in participatory simulations of such systems. The major responsibilities of this position will be to develop activities for using HubNet in classrooms and to field test these activities. This is also a good opportunity to learn about the new emerging sciences of complex dynamics and to learn how to program networks for rendering these dynamics.
See more details.
This position can be undertaken either for pay (work-study or regular, minimum of 10 hours/week) or for C99 course credit.
Qualifications: Enthusiasm for the project, ability to learn fast and good communication skills. Desirable qualifications include a knowledge of graphing calculators, middle school and a strong math/science background.
Hide details.

Java Programmer (Course credit or work study)
Description: This position would involve writing and maintaining the Java code behind our parallel modeling language NetLogo. Opportunities to design/implement compiler, interpreter and runtime engine, graphics, GUI, networked features, and more.
See more details.
This position can be undertaken either for pay (work-study or regular, minimum of 10 hours/week) or for C99 course credit.
Qualifications:The most desirable qualifications for applicants are enthusiasm for the goals of the project, the ability to learn new languages and systems quickly, good troubleshooting and debugging ability, good command of data structures and algorithms, and interest/ability in writing clean, high quality, readable and maintainable, platform-independent, bug-free code that will last. Also desirable: experience with Java, experience coding on a team, experience or interest in compilers and language design, and ability/interest in good HCI/GUI design.
Student applicants should either know Java or know a related language such as C++ or Common Lisp and have a strong desire to learn Java. CS311 Data Structures is a required prerequisite. (CS322 Compilers and CS343 Operating Systems are helpful but not required.)
Computer Modeler (Course credit or work study)
This position can be undertaken either for pay (part time, work-study or regular, minimum of 10 hours/week) or for C99 course credit.
Description: This position would involve learning a parallel modeling language called NetLogo and constructing models of complex systems using it. This involves analyzing the system's global behavior and finding local rules that generate that behavior. The domains of modeling cover a wide range of disciplines including mathematics, physics, biology, chemistry and economics as well as education and computer science. This is also a good opportunity to learn about the new emerging sciences of complex dynamics and to learn parallel modeling techniques for rendering these dynamics. 10-30 hours/week commitment.
QualificationsThe major qualifications are enthusiasm for the project, creativity, good analysis skills, and ability to learn fast. Also helpful would be strong math/science background and knowledge of Lisp/Scheme.
Video Research Assistant (part-time, work study or regular)
Description: This position would involve digitizing video recorded from projects, then labeling, cutting, and organizing the video clips.
Qualifications: Comfort with using and learning about computers and video.
Hide details.

Full Time Positions


Post-Doctoral Fellow
For STEM Education and Computational Thinking Project at Northwestern
Northwestern University (NU) School of Education and Social Policy seeks applicants for a postdoctoral fellow in the learning sciences. The candidate will be part of a team of researchers, faculty, and teachers involved in a newly funded initiative by the Spencer Foundation. The goal of this broaden participation in computing fields, increase student interest in STEM fields, and bring STEM curriculum more in line with science as it is practiced in the 21st century. In this effort we will develop, implement, and evaluate computational activities for high school and middle school STEM classrooms. The project will focus primarily on under-resourced schools and underrepresented youth to improve the equity of and access to the highest quality educational materials.
See more details.
This position provides opportunities for in-depth qualitative and quantitative research in schools. Successful candidates will be comfortable conducting research in school and classroom environments and coordinating with teachers and administrators. The candidate will be part of a collaborative research team involving Northwestern faculty from learning sciences and computer science. This is a dynamic and vibrant collaborative environment comprised of faculty, post- docs, students, computer programmers, modelers, and curriculum developers.
The candidate would co-supervise the work of graduate students and staff, publish research papers, contribute to grant writing and materials development, work closely with implementing schools, and help shape the overall scope and direction of the research. There will be close mentorship from the Co-PIs (Uri Wilensky, Michael Horn, Kai Orton and Kemi Jona) as well as opportunities to learn from other truly outstanding senior scholars and practitioners. Fellows will fully participate in research laboratories: Center for Connected Learning and Computer-Based Modeling (CCL) and Tangible Interaction Design and Learning (TIDAL) Lab.
A successful candidate will have a doctorate in learning sciences or a related field (e.g., science education, computer science education), strengths in research methods, have a science background, good communication skills, experience with classroom-based research, and a strong writer. Preference will be given to applicants with expertise in computational learning and work with middle or high school teachers and students.
Start date is as soon as possible and expected duration of the post-doctoral fellowship is two years with possibility of renewal for a third. To apply, please send a cover letter, CV, sample publications and names and contact info for three references to ct-postdoc@ccl.northwestern.edu. Application review will begin immediately and continue until the position is filled.
Northwestern is located in an attractive lakefront community adjacent to Chicago. For more information about the School of Education and Social Policy, please visit http://www.sesp.northwestern.edu/ . Minorities and women are strongly urged to apply.
Northwestern University is an Equal Opportunity, Affirmative Action employer. Hiring is contingent upon eligibility to work in the United States.
Hide details.