Kiyohito (Kiyo) Kunii

1. Why this program? Why Imperial?

I chose the MSc in Computer Science at Imperial because it offers a good mix of fundamental computer science in the first semester and advanced and specialised modules in the second semester. Imperial College London is also a leading research university and has a very good reputation in both academia and industry. I was also interested in learning about symbolic artificial intelligence (not just statistical machine learning, for which you can easily find lots of good online courses), and Imperial is leading the research in the field.

2. What did you do before the program?

My first job was as an M&A (Mergers and Acquisitions) advisory, where my daily work mostly involved things like financial advising and project management—nothing like software engineering and data science, and there was no coding involved. Then I taught myself programming and started working as a full-stack developer at a cloud computing start-up where I did both JavaScript front-end and Python back-end development. After that, I wanted to build up fundamental computer science knowledge and study new subjects, such as machine learning, and this program was a perfect match for my needs.

3. What coding experience did you have when you started?

I had taught myself basic JavaScript, HTML/CSS, Python and Ruby using online courses like Udacity, but I hadn’t studied any of the statically typed languages covered in the program, such as C++ and Java.

4. What did you like best about the program?

The program not only covered the theoretical and mathematical concepts of computer science, but also provided a number of very hands-on assignments. I especially enjoyed the software-engineering group project, where my team worked with an external company (online supermarket Ocado) to build an end-to-end deep-learning pipeline to recognise grocery products. For the project, we developed a new data augmentation method using 3D rendering to solve a real industry problem, which was interesting from both an academic and a practical viewpoint.

5. What did you find most challenging about the program?

The second semester was especially challenging for almost all the students in this program, because there was so much to do. In my case, I was taking advanced elective modules, working on a group project, doing research to choose my dissertation topic, and preparing for the end-of-year exams all at the same time (the exams for both the first and second semester modules were all held in May). Some people were even job-hunting as well, especially those applying for graduate positions at large tech companies.

6. What did you learn or do that you are most proud of?

I am proud of the fact that I survived the program! And I’m especially proud of how we did in the software-engineering group project, where we built an end-to-end machine learning program using 3D rendering for data augmentation. The project was awarded the Corporate Partnership Programme Commendation for Group Project, and our research was published in PeerJ Computer Science as “Synthetic dataset generation for object-to-model deep learning in industrial applications” (The code and the full report are available at https://github.com/921kiyo/3d-dl).

7. What was your ideal next step after completing the program and what are you doing now?

I wanted to do a job that involved more back-end engineering at a company focusing on big data and machine learning. At the moment I am a software engineer at an advanced analytics company, where I am working on an open-source library for building robust production-read data and analytics pipelines. I enjoy working here and am learning a lot every day. The MSc program was intensive, but it was really just the beginning of what will hopefully be a long career as a programmer, and there is still so much to learn!

8. Anything else you would like to tell people who are considering this program?

I really recommend this program for anyone who wants a solid start to their career in the tech industry or who wants to prepare for PhD research in the field. A lot of my former classmates have embarked on successful careers as software engineers, data scientists, machine-learning engineers and data engineers, or work in competitive industries such as management consulting and finance. Some have even started their own companies, and others are doing PhDs at prestigious universities and research labs. So if you are interested in any of these options, I think the MSc in computer science is one of the best programs you can choose. And last but not least, I was also very fortunate to meet many clever people on this program, some of whom are now my friends and colleagues.