Saturday, July 27, 2013

My Year at Coursera

Just over a year ago, I realized that my passion in life is education and announced here that I would be joining Coursera as a frontend engineer to help them evolve online university-level education. It's been an incredible year, one where I've learnt a massive amount about frontend engineering, startup culture, and online education.

I've made the difficult decision to move on from Coursera engineering for a different role in the education space, but I really appreciate the time that I had at Coursera and I want to take a moment to look back on it here:

The Projects

I got the opportunity to both make new parts of our interface and re-think existing bits, both from the technology and usability point of view:

  • Made the first team page (screenshot)
  • Rewrote the course catalog and frontpage (screenshot)
  • Wrote the interface and APIs for our social profiles (blog post)
  • Improved the messaging of quiz deadlines to reduce student confusion
  • Re-wrote our Django admin in Backbone/APIs instead (blog post)
  • Ported our legacy codebase to Bootstrap 2 (blog post)
  • Re-wrote our forums in Backbone/APIs instead (blog post)
  • Coded the feature detection and half of the sign-up process for Signature Track (blog post)
  • Wrote an iCal feed for deadlines in classes (blog post)
  • Made a way for professors to connect forums to lectures
  • Improved the performance of our frontend (blog post)
  • Created a reporter wizard for students to get help and report bugs
  • Wrote hundreds of tests for the frontend (blog post), Django APIs, and legacy PHP code (blog post)

The Technology

I found myself in a stack of many technologies that I'd heard of but never used on a real project, so this was a great opportunity to learn them on a deeper level:

  • Frontend tools: Backbone, Underscore, Jade, Stylus
  • 3rd party APIs: Transloadit, Badgeville, Google Maps Places API
  • Languages: Python, PHP, Scala
  • Web frameworks: Django, Play
  • Amazon Services: S3, CloudFront, RDS, EC2, CloudSearch
  • MySQL and phpMyAdmin

The Culture

We went from 15 to 50 people over the course of the year, and during that time, we cultivated our own unique Coursera culture, one of fun and learning:

  • We came up with fun Formal Friday themes, when we got bored of the formal thing - my favorite was when everyone dyed their hair pink to match mine.
  • We started a Show & Tell on Mondays, and are still doing it now, with people across the whole company sharing their hacks, their progress, even their family vacation photos.
  • We ran in the MudWarriors challenge together and practiced our handstands in the hallways.
  • We started an underground Twitter account.
  • We invited startup founders, engineers, and our favorite Coursera professors to give tech talks about their area of expertise, always with lively discussions after.

The People

The Coursera team is a bunch of the smartest and most passionate people I know. Many of them used to be teachers or TAs, they come from all over the world, and they're all motivated by the mission to improve education for everyone. They're also a whole lot of fun. :-)

If you want to join Coursera, they are pretty much always hiring, join them!

...And stay tuned to find out about my next adventure.

No comments: