Principal Software Engineer

About Our Department - The Office of Digital Learning was created to transform teaching and learning at MIT and around the globe through the innovative use of digital technologies

The Engineering Department at ODL is looking for a full time principal software engineer to join a small but fast growing team with big ambitions to redefine the use of technology in teaching and learning at MIT and beyond. In this role you will have a significant impact on implementing our new products and integrating cutting edge technologies and features into a robust educational platform and play an integral part in designing.


  • Architect and develop enhancements for MITx, the MIT instance of Open edX ( used for residential teaching and learning.
  • Work in collaboration with the edX team and Open edX community to improve the Open edX platform.
  • Architect and develop scalable tools with flexible APIs that work well with other software services within the MIT ecosystem
  • Advance best practices within the engineering team by leading the technical design, code reviews process and mentoring other team members
  • Work closely with, brainstorm ideas and incorporate feedback from, the engineering team, MIT community of developers, teachers and learners, Open edX community and open source community at large.


  • B.S. or higher in Computer Science or related technical field (or equivalent work experience).
  • 7+ years of professional software development experience. 3 or more years experience as a technical lead, senior engineer or principal software engineer or solutions architect
  • Strong understanding of Object-oriented Design and Analysis, multithreading, database programming, Dependency Injection, and common design patterns concepts and techniques
  • Proficiency in at least one programming language: Python (preferred), Ruby, Java, PHP, Javascript
  • Proficiency creating web applications in one server side framework: Django, Rails, NodeJS, J2EE , etc.
  • Proficiency with relational databases design and SQL


  • Experience developing and maintaining Saas applications.
  • Experience with NoSQL databases like Mongodb.
  • Familiarity with modern DevOps tools, like Vagrant, Puppet, Ansible, Docker etc.
  • Github profile or link to open source work
  • Strong collaboration skills, ability to mentor and be mentored
Interested? Please get in touch with us at