14 February 2013

Astronomer to Data Scientist

Jessica Kirkpatrick Slack

I recently made the transition from astrophysics researcher to data scientist for a tech company.  Here are suggestions for people in academia / research who are interested in pursuing a tech job.

Most tech companies are interested in smart, talented people who can learn quickly and have good problem solving skills. Scientists have these attributes. Therefore, if you apply for a job at a tech company, your application is likely to catch the interest of a recruiter. However, once you get an interview, there are many other skills that the company will try to assess, skills that you may have (or not) already. The following are some tips which will help you in both the application /interview process, as well as on the job at a tech company.

1) Learn a Standard Language
Sorry astronomers, but IDL isn't going to cut it if you want to get a tech job. You need to learn one of the industry-standard programming languages. Python, Ruby, Java, Perl, and C++ are all good languages to pick-up. It would also be good to learn a statistical analysis package like R, SAS, SPSS or Excel as well as a visualization package to show your results. Some jobs involve a coding interview. These require some knowledge of computer science algorithms. Look online (http://blog.geekli.st/post/34361344887/how-to-crack-the-toughest-coding-...) as there are many examples of coding problems for you to practice.

2) Learn About Databases
"Big data" is the Web 2.0 it-phrase. If you want to play with big data, you are going to need to learn how to manage, handle and access it. SQL is a must. It would be great if you could also familiarize yourself with Hadoop/MapReduce and Hive.

3) Brush-up Your Stats
Many tech interviews involve doing complicated math, probability, statistics, brain-teasers and open-ended problems. Dust off some of your old statistics texts or pick up a book about data analysis using one of the above languages. Search online for past interview questions (http://www.glassdoor.com/Interview/index.htm) of the companies you are applying to.

4) Communication is Key
To be effective in a tech job, not only should you be able to program, analyze data and solve problems -- you need to easily explain your work to people who aren't very technical. Communication is incredibly important for these roles, and a huge part of the interview process is gauging how well you explain complicated ideas to a lay-person. There are many opportunities to practice this skill within academia, so give many talks, teach classes, tutor, volunteer or do whatever you can to become very comfortable explaining technical ideas to people with different backgrounds and skill levels.

5) Convert Your CV into a Resume
There is a difference, and it is important(http://chronicle.com/article/From-CV-to-R-sum-/44712). People at tech companies get hundreds of resumes. It is important to succinctly highlight the skills you bring to each job. It's great that you’ve published dozens of papers, given lots of talks and taught many classes... but what is more important are the skills you acquired from those experiences. Resumes should only be 1-2 pages. Look at the skills required for the job you are applying for, and then try to demonstrate those skills by listing the relevant experience.

6) Academic vs. Business Problems
In academia the goal is usually to get the most accurate solution possible. Time and efficiency are less important than doing something thoroughly and rigorously. In business the goal is to increase your company's value. Therefore any task must optimize both accuracy and value. This is a difficult transition for many academics to make. Spend some time reading TechCrunch (http://techcrunch.com/) and other such sites to help familiarize yourself with the various metrics and problems that tech companies care about. Be prepared to work on short deadlines and to be able to prioritize tasks in order to increase the value of your work. Keep this in mind when answering open-ended interview questions so you demonstrate your understanding of this difference.

7) Do an Internship or Project
The best way to get your foot in the door of a tech company is to do an internship. Many of the major tech companies have paid summer internships that will introduce you to this type of work, as well as teach you many of the skills mentioned above. The Insight Data Science Fellowship (http://insightdatascience.com/) is an internship specifically designed for helping academics transition into tech positions. If you are unable to take time off from your current job, then consider doing a project on your own. Create an application for your phone or do a research project with one of the many free data sources out there. This will give some insight into the work you might do at a tech company and an important set of talking points for interviews.

If you have more questions about making the transition from academia to tech or the tech interview process, feel free to contact me.

The AAS Committee on Employment is pleased to highlight useful resources for astronomers, and welcomes your comments and responses to this and previous columns. Check out our website (aas.org/jobs/) for additional resources and contact information for the committee members.  We are always looking for guest columnists in non-academic careers.  If you are willing to contribute, or have an idea for a future column, please contact the Employment Column Editor, Liam McDaid (mcdaidl@scc.losrios.edu). The AAS committee on employment exists to help our members with their careers.  Your ideas are important, so let’s hear them!