4 ms·
Data science in 2013 has the feel of what software engineering should be, and possibly what it was before the MBAs got involved and attempted to commoditize dev
by michaelochurch 13y ago
Data science in 2013 has the feel of what software engineering should be, and possibly what it was before the MBAs got involved and attempted to commoditize development. It involves high autonomy and few non-technical people meddle in your work or hold strong opinions of how you "should" be doing the work. You generally get to pick your tools and set priorities.
The other major appeal of machine learning is that it touches all parts of computer science. You might have to go to a very low level (C, assembly, Cuda) for performance; but there's also tons of high-level work around expressing complexity elegantly-- hence the interest in using VHLLs like Python and Clojure for machine learning. Most professional software engineers are just munching tickets, but if you're in data science, you get to learn about databases, compilers, AI, information retrieval, and statistics at a more-than-superficial level.
When you have machine learning cred, you have a much better chance of being able to be an actual computer scientist instead of a cog in some dysfunctional CodeFactory.
- mrfusion 13y agoAny tips for a software engineer looking to make a switch to data science?
- michaelochurch 13y ago1. Learn some ML. Either use Andrew Ng's course or Hastie's book or Bishop's. If you complete Hastie or Bishop you will be ahead (in theoretical knowledge) of 99% of professional data scientists. 2. Do some data science/machine learning work at your current job. It's not an either/or between SWE and DS. Software engineering is a huge part of real-world data science. 3A. Ask for a huge raise you won't get. When declined, say you'll take a regular cost-of-living raise if it comes with the title "machine learning engineer" (which, IMO, is more impressive than "data scientist"). -OR- 3B. Change jobs. After (1) and (2) you're more than qualified for a data scientist role.
- mrfusion 13y agoThanks. Anything special to do when looking for jobs? What keywords do you look for?
- michaelochurch 13y agoIt's best to do all of this when you're employed and have been at a job for at least 2 years. Focus on quality rather than quantity. Be selective. You can send out hundreds of CVs in a night, but you have a finite amount of emotional energy. Network, but the most useful thing you'll get out of connections is information, not good-ole-boy introductions. Go to as many Meetups related to your interests as you can. (Most cities have data science meetups, Scala and Clojure and Python meetups, et al). Limit yourself to one coding test per week. They're not hard or time-consuming but they're emotionally draining. Get a good night's sleep before the interview. If you're unemployed, resist temptations to drink or keep an unusual schedule. You need to be "on" at 9:00 am. Keywords in job specs don't mean a whole lot. A great HR team doesn't mean a great company, and vice versa. People on HN say, "I wouldn't want to work for a company that wrote job specs like that". Well, in reality, there are a lot of good companies out there with crummy HR. So don't get too obsessed over keywords because most of what's in a job-specs ("looking for candidate with a track record") is non-information.
- mrfusion 13y agoThanks again! By the way, I wish I could find breakfast or lunch meetups. The last thing I want to do after work is head out to the city, deal with parking, etc.