A Summer of Work and Fun at Coursera – Coursera Engineering – Medium

By Sidwyn Koh

Hello, fellow Coursera learners! I’m Sidwyn, a rising Computer Science junior at the University of California, Berkeley. This summer, I had the chance to embark on an exciting journey as an intern on the Content Experience and Teaching Product Team (also known as the Content team) at Coursera.

How It All Began

As a student of the world, I have always been interested in education and technology. After running and eventually selling a company in Singapore that taught students how to build mobile apps, I was on the lookout for more. Coursera, a young company whose mission is to provide universal access to the world’s best education, caught my eye with its unique position of standing in the intersection of technology and education. After having a chat with Ngiam, Coursera’s director of engineering, I better understood the massive impact the company was having on its 13 million learners worldwide. Less than a week later, I found myself having an interview with a engineer (who eventually became my mentor), and in no less than an hour of finishing the interview, I received an offer letter from the Talent team inviting me to join the team. Because Coursera’s mission was so tightly aligned with mine, and considering the speed at which Coursera replied, I was thoroughly impressed all around and decided to accept the offer.

On my first day at Coursera, I picked up some employee swag, a Macbook Pro and was soon assigned a backend task. Having no prior experience in backend development, setting up my computer was a completely new environment to me. Thankfully, with the help of my mentor Parth, I soon got my bearings and learned the trade of the Scala backend pretty quickly. Before I knew it, I was firing off a couple of code revisions to the rest of the team, and I started to see my code live on the site.

What I Worked On

Interns at Coursera get to work on projects that are crucial to the company. I was given the liberty to pick my own project, and I chose to help expand our email infrastructure tool that allowed instructors to customize and send emails to their students.This involved data modeling, building the backend resources, and finally coding the frontend. It was a challenging project, but reflecting upon what I learned, I was glad I embarked on it. I had the chance to work both internal and external tools such as the underlying Cassandra database, the Kafka messaging system, and our Remote Procedure Call (RPC) layer. Throughout the entire process, I got exposed to end to end web development writing code in both Scala and JavaScript. All in all, it was a very rewarding and fun project which involved many moving parts. With this tool, instructors can send out emails to a wider group of people.


At Coursera, the culture is amazing. Besides working with incredibly smart people, there are tons of activities going on every single day. Aside from Work-From-Home Wednesday, I participated in a variety of sports in my three-month stint: frisbee, basketball, and badminton. Throughout the entire summer, interns like me also had the opportunity to go on a variety of outings, such as a water park, barbecue and also karaoke events. I also had the chance to have lunch with Coursera’s CEO Rick Levin (which other company provides such an opportunity?).

Moving On

Although this week officially marks my last week here at Coursera, I feel that I still have so much left to learn, and so many more people to meet. If there is one lesson that I take away from this internship at Coursera, is that learning never stops. I have always felt challenged throughout this internship, which has allowed me to develop in both my business and technical skills. Before I sign off, I would like to thank every single member on the Content Team — in particular Parth and Amory who have been my mentors, as well as Roshan, my manager. Thank you for providing me the opportunity to learn and grow this summer at Coursera!

Source link