Advice to Non-Computer Graduates

A student wrote to me: “I graduated last summer but had difficulty to find a job. However, my English is good, so I find work in a small shop selling gifts and souvenirs for tourists, but I do not want to do that for the rest of my life. I want to switch to Computer Science which may be easier to find a job, but I do not want my family pays for my education again because I still have brother and sisters that need my parents' support. I do not know what to do. Please advise.”

Answer: Today, many companies are having difficulty in finding Information Technology skilled workers with specific skills that they need. As a college graduates who is still looking for a job, this is the best time to learn new technology skills. Since you have good English skills, there are several Massive Open Online Courses (MOOCs) that can make it easier than ever to learn specific skills from top schools such as Harvard, MIT, Berkeley, and StanfordUniversity. You do NOT have to pay for these courses, all you need is your time and commitment.

I highly recommend that you enroll in the following courses: Introduction to computer science; Java programming; data science and analytics; agile software development, and Innovation entrepreneur. You could complete these courses in few months and put the new skills on your resume. Many companies would consider the skills over the degree. If needed, you may volunteer to work as an intern for them to see that you do have the needed skills.

The sad fact is many students are not serious enough to complete these courses. Many took class out of curiosity then drop out. However, if you put in your time and efforts, I believe you could complete all five courses. And the reward is you will receive certificates of completion from the prestigious HarvardUniversity to put on your resume. Here are the five courses that I highly recommend:

1) Introduction to computer science (Harvard University CS50x)

https://www.edx.org/course/introduction-computer-science-harvardx-cs50x#

HarvardUniversity's CS50x course is a comprehensive introduction to computer science and the art of programming for all Harvard students, with or without prior programming experience. This entry-level course teaches students how to think algorithmically and solve problems efficiently. Topics include abstraction, algorithms, data structures, encapsulation, resource management, security, Software engineering, and Web development. Languages include C, PHP, and JavaScript plus SQL, CSS, and HTML.

2) Introduction to Java Programming (Hong KongUniversity)

https://www.edx.org/course/introduction-java-programming-part-1-hkustx-comp102-1x-2#

This Java course from Hong Kong University of Science and Technology will provide you with a strong understanding of basic Java programming elements and data abstraction using problem representation and the object-oriented framework. Java is one of the most popular programming languages in the world and is the basis for many applications as well as a foundation for many web-based solutions and websites.

This course uses sample objects such as photos or images to illustrate some important concepts to enhance understanding and retention. Student will learn to write procedural programs using variables, arrays, control statements, loops, recursion, data abstraction and objects in an integrated development environment.

3) Introduction to Python for Data Science (Microsoft)

https://www.edx.org/course/introduction-python-data-science-microsoft-dat208x-5

This course comes from Microsoft. It explores the multiple tools developed to effectively and efficiently analyze data using the powerful Python programming language. You will start with basic arithmetic and variables, then learn how to handle data structures, such as Python lists, Numpy arrays, and Pandas DataFrames. Along the way, you'll learn about Python functions and control flow. Plus, you'll look at the world of data visualizations with Python and create your stunning visualizations based on real data.

4) Agile using Ruby on Rails (UC Berkeley)

https://www.edx.org/xseries/agile-development-using-ruby-rails

This course comes from UC Berkeley. Today about 80 percent of companies uses agile for all software development project. This course teaches fundamental software engineering skills using Ruby on Rails, JavaScript and the agile development methodology using a “learn by doing” approach. Students will use the same tools and techniques as today's IT professionals, like test-driven development, behavior-driven design, continuous integration and continuous deployment onto the public cloud, according to edX.

5) User innovation: A path to entrepreneurship (MIT)

https://www.edx.org/course/you-can-innovate-user-innovation-mitx-bootcamp0-0#

This course comes from MIT. It encourages students to identify a problem, develop a solution and then work to monetize that through a business plan. First, think about what you need. Next, find out whether others want the same thing. If they do, you can start a venture to supply others with the product or service you first developed for yourself. The examples of user innovation are infinite; a surfer created the GoPro to take selfies while surfing. A student came up with Dropbox after forgetting his flash drive. Two broke entrepreneurs rented out their living room to help pay rent, and Airbnb was born. They'll all share their paths to startup success during this course, taught by Eric von Hippel.

Sources

  • Blogs of Prof. John Vu, Carnegie Mellon University