Saturday, March 18, 2017

Becoming a Data Scientist - Part 2

Wow, thanks for the out pouring of advice and help.  A special thank you to Ryan Herr who is a Data Scientist!  Follow him on Twitter at @rrherr, I really appreciate the help!!!  Whenever you are moving into a new field, one of the fastest ways to achieve your goal is to find a mentor.  I know several people from work and online who are currently Data Scientists or have been in the past.  Find people online who can be a mentor to you or who you can follow.  Here are some basic things I am doing and recommend so far:

Listen to podcasts on the way to work:
http://www.becomingadatascientist.com/category/podcast/  

My commute is 25 minutes each way so I should be able to get through all or most of these podcasts in a month without too much effort.

DataQuest:
https://www.dataquest.io/

I have started Data Quest and highly recommend it, it's like an online Data Science boot camp.  One thing I would like to note.  I used to be supportive of coding bootcamps back in 2012 - 2014, I am no longer supportive of coding bootcamps.  The reason being there is a glut of  "junior developers" on the market because of all the coding bootcamps who constantly "churn" them out.  In any new field which is in constant change, there is a huge opportunity for people who are less qualified to break into the field.  This is what it was like from 2012 - 2014 with coding bootcamps, if  you went to a bootcamp you could easily land a job afterwards.  That is not the case anymore, there are literally hundreds of people all applying for the same junior dev job. Most with virtually all have the same story: "I attended a coding bootcamp".  This is not a good way to stand out from the crowd anymore, in fact it almost makes you "unremarkable".

The reason I am doing DataQuest is that the data science field is still very new, and there are no clear paths on how to get hired as a Data Scientist.  Basically in my mind the data science field feels very much like trying to get a junior dev job back in 2011 - 2012.  It's hard because there is no clear path, but it's also very freeing because no one can tell who is truly "qualified" or not.  This is why I am trying DataQuest, I feel like they have a pretty good path ( so far ) that gently introduces you to data science topics.  I think 5 years from now there will be 100 data science bootcamps and everyone will be telling you to attend!

I have always thought and have done the following:

"Don't do what everyone else is doing.  If everyone is doing something then do the opposite"

Also I look at trends and which jobs are getting outsourced or are easier to outsource.  I also know that the reason brain surgeons make so much money is because they are hard to replace.  Not many people can do what a brain surgeon does, brain surgery is a real skill.  The tech field is the same way, the more people who have a certain skill the lower the income, and the easier to outsource the job.  I also believe in doing something that I am passionate about and enjoy doing, it's not only about which job makes the most money.  You need to enjoy what you are doing, this is the reason I am not interested in becoming a Javascript developer, I simply do not enjoy using Javascript.  I was a mid level software engineer in testing for 6 months and realized it wasn't for me.

The whole key it to learn the basics of programming, once you do there are so many different opportunities for jobs out there!  Spend at least an hour every day learning something new in the tech field, for me it is data science.  Get moving peeps, you can do this!!! :-)



Wednesday, March 15, 2017

Watch me become a Data Scientist!

You may or may not remember me, I am that guy who used to do this for 8 years:




My "secret technique" was shoeing large angry horses all day, putting my kids to sleep, then spending time with my wife, and finally from 10pm - 1am ( or till I fell asleep on the couch ) learning how to code.  I did this for 9 months, 2 days straight without missing a day.  I am a very driven person and believe in pushing myself to new levels, I also get bored very easily and love to learn new things.  One of my favorite sayings is: "You can sleep when you're dead" :-)

I had thousands of people follow me on my journey of learning to code and eventually landing a junior developer role.  After getting hired I was inundated with hundreds of emails asking how a "dumb Blacksmith / Farrier" learned how to code, so I wrote a book.  After a few years in the tech field I started coaching people how to land jobs. I soon realized that coaching was way too time intensive, and I could never keep up with all the coaching requests.  I also realized that the reason people weren't getting hired had very little to do with their technically ability, and way more to do with their ability to network and market themselves.  So I created an online course teaching people how to get hired super fast.


Why am I telling you this???   Bragging? 




No.




I am embarking on another equally exciting and challenging journey, and I have decided to let anyone who would like to follow along with me on this journey.  In August 2013 I thought I wanted to be a senior Rails developer in 5 years, that is no longer my goal.  I am currently a Test Automation and QA consultant for a very well known company who shall be nameless.  My journey has been successful, but my journey is not over.  I thought I wanted to be a "Ethical Hacker" so I got a mentor, and learned as much as I could for 4 months.  I decided that wasn't the path for me.  This time around I thought I would let you watch me struggle and learn a new field, one that is not very well charted at this point in the tech industry.  I am going to become a Data Scientist.

I don't know all the answers about how I am going to make this happen, but I do know that success for me will be landing a Data Science job.  I was going to wait for a while until I knew a lot more about the field. Instead I decided to let you in on the "ground floor".  I have been doing my homework, studying the industry for the past month in the evenings after work, and have come up with a basic plan.  I will tell you more about my plan as time goes along.  One of the biggest issues that people face is not starting with the end in mind.  I have a very clear target: Data Scientist position.  Having "analyis paralysis" is another common problem, too many options so they don't pick any.  Others find themselves with too many choices and resources!!! So they keep bouncing around and switching material constantly.
 
If something is not working for you, then by all means stop using it and try something else.  If however you are constantly chasing the new shiny thing, then you will never accomplish your goal of landing a job.  Make no mistake, I do not live in my parents basement, I live in the real world with real world bills.  The best way to see if you are "good enough", is to go out and try to land a job in your chosen field.  Becoming a professional in the industry is tough, being a "Monday morning quarterback" is not hard.  Waiting until you are perfect is a waste of time, and something that will never happen in the tech industry as it changes too quickly.  I say jump in the game, get your feet wet, that is the best way to learn and push yourself to new levels.

If you would have told me that I would be a highly paid consultant 3 years 8 months ago I would have laughed at you.  I have worked at 4 companies in 4 years, I have seen some awful situations. I have experienced good management and horrible management.  I have seen first hand the problems of "technical debt", I don't need to read about it or take a test, I have lived it. I have had to learn entire new frameworks of code and start contributing to them in a matter of weeks.  The only thing that is constant about tech is that it will always change, and that in order to stay ahead you will have to always be learning!  No hand holding here, this is the big leagues, you will have to figure it out fast or get laid off ( true story ).

So here I am again, ready to crawl and fight for every shred of knowledge about Data Science. It's scary too when you say things like this in public.  People send you mean emails, call you stupid just because you set big goals.  I don't care, when people tell me I can't do something it just gives me more fuel to my fire!  This blog has always been about helping people, and making it easier for others to navigate the crazy tech field.  I won't blog everyday, but I will share with you anything and everything I find out along the way.  I hope you will follow along and watch me acheive my goal!!!

You can do this, never let anyone say that you can't! 


Tuesday, January 17, 2017

Why you should buy me lunch :-)

I received an email today from a guy in Winston Salem N.C.  who is learning how to code.

So what?

I loved his outside the box thinking!  He asked me if he could buy me lunch and "pick my brain".  Mind you he will have to drive 100 miles EACH WAY!!!  I've had this happen before, I had someone drive over 150 miles to buy me coffee at Starbucks :-)

Why do I tell you this...to brag?  no.

Coding bootcamps are churning out fresh new coders everyday, thousands and thousands of new coders every year.  Coding bootcamps are the solution to getting a job...except they're not.  Bootcamps are having a harder and harder time getting they're students hired, I receive many emails that tell a similar sad story.

Attend bootcamp >> land job >> 3 months later laid off

There are only so many junior level jobs on the market at any one time.  There is a glut of bootcamp grads these days.  Also the entry level skills required to land an entry level dev job are becoming harder thanks to Javascript usage growing everywhere.

I have some good news, there will always be jobs for people who know where to look, and who think outside the box.  What do I mean by this?

College was a great way to get a high paying job back in the 70's - 90's 
Bootcamps were an amazing way to get a junior dev job 2013 - early 2015

There is a new way to break into the tech field that I have touched on before, but the point is - there will always be jobs for people who don't follow what everyone else is doing.  If you wait until everyone is doing something you are too late.

The best way to predict your future is to create it! When I was shoeing horses for a living I used that to my advantage to stand out from the crowd with my unique story.  I needed help with coding but couldn't afford to go to a coding bootcamp, I met David Bock ( a very senior Rail developer ) for coffee, I had to drive 1 hour and 30 minutes to meet him.

Meeting with David helped me learn about the tech industry, and helped me meet people I didn't know. That relationship eventually helped me land my first tech job as a junior developer.  I am constantly emailed and asked by people to give them personalized private coaching for free.  Most of these people have not paid $10 for my book or course, they simply want my help for free with absolutely ZERO effort on there part.

That's what 90% of people ask who email me. 

Guess what I say when someone offers to drive 100 miles and buy me lunch???  YES!  I love helping people, I just can't personally help every single person do to the number of emails I receive.

I have 2 final thoughts:

Be different, think outside the box - don't do what everyone else is doing.
Buy me lunch :-)  Think about it $10 - $15 to hang out and get my personalized advice for 45 - 50 minutes is a deal.  It's the cheapest coaching program ever, if you ever are in the Raleigh area, feel free to reach out to me and I'll do my best to help you!

 

Sunday, December 11, 2016

How to automate everything - part 3

The world is changing faster than ever!  When I started learning how to code things were changing fast... now it's changing at warp speed!  Things I have told you as a fact in the past, I am now seeing changing.  You have to stay up to date or else get swept down the tech stream.  I always keep my eye on emerging technologies, but the most important source I keep my finger on is tech job apps.

When they change, I change.  If your goal is to stay employed you need to stay fresh with your tech skills.  In my opinion there has never been a better time to get into QA than right now, this article backs me up as well:

https://www.jibe.com/ddr/the-top-5-skills-and-occupations-in-demand-right-now/


I found this article very interesting for anyone wanting to get into QA:

https://www.qualitestgroup.com/blog/future-of-software-testing/the-qa-job-market-is-a-killer-would-you-stand-a-chance/

One thing that is awesome about the QA field is that it is changing over to to automation at a rapid rate!  What does that mean to you?  If you are just out of a coding bootcamp and find the junior dev field crowed by a lot of other coding bootcamp students, than think about the QA field.

Test automation is at least 50% writing code, 50% manual testing.  One of the best ways to learn more about testing and automation is to start listening to "test talks", I listen to them on the way to work everyday:

test talks podcast

What if you are a manual tester who can't write a single line of code ( many of QAs are in this boat )?I suggest you start writing automation, - doesn't matter what you automate,it  doesn't matter how crappy the code, just start writing!  Push all of your code up to Github so you can start building a little portfolio for potential employers to see.

As an example do what I did, while watching some Netflix in the evening with my wife, I wrote a basic script to automate the process of earning points youlikehits.com site.  I don't need the script, don't really care about the script.  The point is to practice writing code and slowly improving your automation skills over time.  Check out my script...laugh... cry, write better code than I did and send me a pull request :-)

you_like_hits_auto_points_collector

I am learning to write my scripts more organically as of late.  I start writing the basics of what I want to the script to do, I start refactoring as the script starts to annoy me and starts getting painful to work with.

Instead of sitting and staring at a blank text editor and trying to write perfect code from the start, simply start writing and pay close attention to the "pay points".  NOTE: this is not good advice if you are a full blown developer.  I am speaking about people who are new to writing code.  When I follow my own advice I find myself feeling more free to actually just start and enjoy the process of writing code.

Isn't that the whole point?  I mean if you hate writing code and stress out every second you are working, why do it?  Let me know what you think of my script :-)  Next up,  I might try and write a script to automate a job on Fiverr!  Give me some ideas, tell me something that is painful for you.
joshuakemp85@gmail.com

Monday, November 7, 2016

How to automate everything - part 2

Want to be more productive at your job?  You don't have to learn how to code just yet to increase your productivity.  Remember we want to automate anything that we have to do 3 times, we don't necessarily have to write the code to do it.  If you use the internet in your day job and a web browser then listen up, I'm going to show you 2 tools / plugins that I use everyday.



Auto Text Expander - Chrome Addon.



I use Auto Text Expander when I am writing test cases in Jira.  Some people keep track of old test cases and try to reuse them.  I find it easier to make common "snippets" and reuse them.  For example I like to be able to type: "red" and have Auto Text Expander instantly auto type: "{color:red} {color}".  This is a small example but there are many more examples that I use at work that are project specific.  The whole key to getting started with automation is learning to become more aware of things that you repeatedly do everyday.  If you are constantly typing the same long phrase, make a shortcut and have auto text expander do it for you!



Autofill - Chrome Addon.


If you have to create dummy accounts or fill out the same forms everyday, do yourself a favor and download Autofill.  I use Autofill to fill in my Test Executions in Jira among other things.


You may not think the above are actually automation, but they are.  Anything you do 3 times in a day you should try to automate.  Which leads me to my last tip:

Never sign emails again!

I hope you are already doing this, but if you aren't using your emails auto signature you need to now!  Don't just read this post, download the addons and START using them :-)