I obtained my MSc degree in Computer Science from the University of Ottawa. My research field is computer vision-based pedestrian detection, and I mainly use deep learning-based methods for my research. During my graduate studies, most of my time was spent reading and writing papers. In my research area, researchers pay more attention to improve the modelling part rather than data analysis or data processing, which may be different from the industry. I don’t have any work experience other than research assistant and teaching assistant.
Motivation to Join the Project-Based Program
Although I have coding experience, I don’t have any experience in the industry, and that could be a huge obstacle to job hunting, especially for a first job. My friend, who has a very similar background to me, joined WeCloudData a few years ago and she got a job offer very soon after finishing the courses and projects. Her success made me realize how important it is to have practical hands-on experience with industry use cases, and how much impact this experience has on the job search.
Level of Effort, Knowledge, and Experience Before Joining the Program
I have been using Python for several years. Because I worked with image/computer vision, I chose PyTorch and TensorFlow to design CNN-based models. I have some traditional machine learning knowledge, but I don’t have much project experience in using them. I knew at that time that my skills were not enough to become a data scientist. Before participating in the project-only program, I spent about one month learning SQL, Pandas, and SKLearn by following some end-to-end toy-size projects. I was able to handle some tasks if I was given enough time for searching official documentation and reading blogs then.
The program is very very helpful. Before I enrolled, the program advisor advised me to join two projects at the same time, so that I can be much more experienced.
I was the lead on one smaller project, and the tasks were to cluster products based on textual descriptions and predict the price using historical data. Even the client is from a start-up company, the project itself was very complicated and interesting, which exceeded my expectations. Because before you start, you can never imagine what challenges you will encounter. This project covers NLP and time series; it covers clustering and regression; it also requires lots of data processing. I learned tons of stuff from this 3-month project. More importantly, the client is very supportive, and he can always give us constructive suggestions from the technical aspect.
The other project was purely a news recommender system. The project is large in scale and well managed. We have 2 to 3 internal meetings and 1 client meeting every week. I have to admit that this is very efficient teamwork. Good communication makes us grow faster. Looking back, I cannot imagine what kind of results we have achieved with 5 months of work — I have never been working on a recommender system before, but with the support of the team and WeCloudData, I designed and implemented two recommendation models in the end.
The teammates are more than helpful and amazing. I am grateful for the chance to network with talented peers and job referral opportunities from alumni. What else surprised me was the community environment–we have tons of chances to attend various technical workshops delivered by experienced practitioners, covering topics such as NLP, recommender system, feature selection, and so on. In addition to the workshop, communication with the project manager is also very helpful. Shan was the project manager of both two projects I worked on, and she always responded to me as soon as possible and gave me lots of useful suggestions on not only project-related questions but also my resume writing and interview preparation.
Job Search Experience and Challenges
I started to apply for jobs in mid of April. But I did not hear anything back in the first two weeks. I realized there must be something with my resume. So I revised my resume by summarizing myself and emphasizing my skills. At the first time, I did not build my personal blog because I thought other things were more important than that. There was one time, Shaohua showed us another student’s blog, and introduced that student was the first to get a job in that cohort. Suddenly I understood why. The fact is that a personal blog/website/portfolio is one of the most straightforward ways to show your skills, your thoughts, and your working style to someone who doesn’t know you at all. From that day on, I started to organize all my projects and add more details, explanations, and documentation (you can actually take advantage of your take-away interview tasks). I built my personal blog with 6 posts, and that is how everything changed. After revising my resume and building my personal showcase, I began to receive interview invitations.
How Has the Project Experience Helped Me?
It helped me greatly in job searching. Every interviewer is extremely interested in the project experience, and they keep asking questions about that. I can tell my project experience is the pitch point. Some interviewers are even subscribers to my client company, and therefore they can get how my work can contribute to the client company. Another advantage is that the story of working with other people can exactly help me to answer behavioural questions. Overall speaking, project experience makes my resume look solid and enables me to stand out from other candidates.
Job Search Timeline
Starting from mid of March, I started to communicate with Shan from WeCloudData and drafted my resume. I got interviews from more than 5 different companies/organizations. Most of them were more than 1 round.
My first interview invitation was on April 28th. At the beginning of June, I got the interview invitation from my current company, the interview was only 1 round, and I got the offer right in the same afternoon.
What’s My Job Like Now
My job is mainly NLP-related use cases. I worked with a senior ML engineer closely on the data analysis and modelling part. In addition to EDA, data manipulation, and modelling, we need to consider some business questions–how to label data? what are the advantages of choosing one labelling platform over others? how to deploy that on our own server? are there any security issues?
In addition to coding, I have a series of meetings and internal training classes to attend.
Basically, your project is like your baby–you need to take ownership of your project. You will work and follow up with people from different teams in order to babysit your own project end-to-end.
Suggestions for Anyone Who Might Be Interested in the Same Program
My suggestion is once you make a decision, act fast.
If you haven’t decided to join this program, you may need to think about what type of job you are interested in, and what are the requirements in the job description, and how can you master those skills.
If you have decided to join this program, you will be grateful for this decision in a few months. Setting career goals and divide-and-conquer them into schedules can enable you sane.
Don’t be overwhelmed, you will definitely feel there are many new things to learn every day, but this is how everyone feels, which means you are moving towards your goals.