Full time Remote / Telecommute

Web Applications Developer (Python + Javascript)

Remote or NYC
0 other recent jobs
Created: May 16, 2017

Description

The Open Syllabus Project is an academic data mining project based at Columbia University that’s analyzing a corpus of 1M+ college course syllabi. We’re building a wide range of tools and services for audiences both inside and outside the university. We aim to:

  • Help instructors discover new resources and design courses.
  • Help university administrators understand the structure of the offerings at their institutions, and to help librarians allocate resources for books, databases, and services.
  • Develop new scholarly metrics that capture which resources are being used in the classroom.
  • Build book recommendation services for lifelong learning
  • Analyze trends in the sequencing of books and concepts on syllabi, to build a “dependency graph” of knowledge.

We launched a beta version of the project with an op-ed in the New York Times last year.  Since then the project has appeared in Nature, Time, The Washington Post, The Chronicle of Higher Education, MarketWatch, Der Spiegel, Business Insider, Lifehacker, FiveThirtyEight, WNYC, QZ, and elsewhere. It’s also been picked up by major news outlets in Europe, Russia, China, Japan, South Korea, Ukraine, Egypt, and Mexico. With new funding from the Sloan, Hewlett, and Templeton foundations, we’re working towards second release of the project that will feature much larger collections of syllabi, books, authors, institutions, and publishers.

We’re hiring a full-stack web applications developer to take a leading role in the development of these public-facing web services. We’re looking for a developer who has significant experience at both layers of the web stack – someone who enjoys building large, stateful Javascript applications, and also is able to build and maintain the server-side APIs that feed these client applications.

Responsibilities

  • Build a API in Python (Flask or Django) that organizes the results of the metadata extraction pipeline into web-facing data stores (Elasticsearch, Postgres) and exposes well-structured REST endpoints for the client application.
  • In collaboration with designers and contract developers, build a front-end application using React and Redux / MobX that surfaces the data on the web.
  • Work with the data engineering team to define data requirements for the front end application.

Requirements

  • 3+ years of professional experience in software engineering.
  • Demonstrated ability to build high-quality, performant, maintainable web applications that serve sizable traffic.
  • Experience building large, stateful Javascript applications with React and React-ecosystem libraries like Redux and MobX.
  • Experience with modern Javascript build tools like Webpack or Gulp.
  • Experience with server-side Python development with Flask or Django.
  • Commitment to sustainable engineering practices – automated testing and deployment, continuous integration, and reproducible development environments.
  • An eye for clean, readable, extensible, well-tested code.
  • Experience with remote / distributed collaboration on GitHub.
  • Ability to work in a team environment, but also the initiative to take on difficult, open-ended problems and see them to completion.
  • Committed to building a tolerant, respectful, and safe work environment.

Nice to have

  • Experience with Elasticsearch
  • Experience with infrastructure automation tools like Ansible
  • Data visualization with d3

First and foremost – we’d love to find a collaborator who can contribute new ideas and help drive the project in new directions. OSP is strongly committed to building a diverse engineering team.

Salary: Competitive

Commitment: Full-time for 2 years, renewable.

Location: Remote or NYC

How to apply


Contact:

If interested, please send an email and CV to syllabusopen@gmail.com.


redux react Flask Django Python

Metadata

Published: Wednesday, May 17, 2017 16:12 UTC


Last updated: Wednesday, May 17, 2017 16:12 UTC