Wednesday, December 16, 2015

My last coaching client just got a Junior Dev paid internship

Hey All, So I am either lucky, or good at getting people hired :-)  The last Coaching client that I currently have just got offered a paid 3 month junior dev internship at a company in Baltimore MD.  I really am sad to not have anymore coaching clients at the moment :-( 

I will update the testimonials section of my blog with each of the last 3 coaching clients stories by the first of the year. 


Here are some of the thoughts and things I have learned over the past 6 of months coaching:


1. I think that I could really help people who already know how to code but haven't been able to land a job.  I think I could help them land a job in 1 month.  Email me if you want to hear more.


2.  I love coaching people to land jobs.  I really get SO excited to help people break into the coding world. It's thrilling to hear how excited they are when they actually get the coveted job offer!  Coaching is my passion, I want to keep doing this for as long as people will keep hiring me to help them get hired.


3.  People don't value free coaching.  I offered to coach 4 people for free, to give back and help them land jobs.  All 4 of them quit within 2 - 3 months of starting coaching.  No matter how much I screened people, no matter how motivated and passionate they said they were, not one even completed the 4 months of coaching.  No matter how many emails I sent or how many hours I spent helping them they all quit.  I never would have guessed this would happen and this is something that shocked me.


4.   Every person who has paid me to coach them has landed a job and none of them took longer than 4 months.  Not bragging, just a true fact that I am proud of.


5.  The biggest problem I see is that there are too many resources and people just think if they take a ton of tutorials, some company is going to hire them.  They have no plan for how to actually get hired.  Everyone should read this article:

Why Emotionally Intelligent People Are More Successful

Basically it talks about what I have observed as the key to landing a QA or coding job:

The Carnegie Institute of Technology carried out research that showed that 85% of our financial success was due to skills in “human engineering”, personality, and ability to communicate, negotiate, and lead. They found that only 15% was due to technical ability. 




6.  The ultimate key to getting hired is being truly remarkable and standing out from the crowd, it's that simple.



Keep coding peeps, you can do this!!!

Thursday, December 3, 2015

If you are going to learn Javascript do this first...

I have stated many times that Ruby is the best programing language for beginner's to learn.  People continue to tell me that they absolutely must  learn Javascript.

OKAY, I give up!

If you are 'dead set' on learning Javascript as a beginner, then you need to help yourself and make things easier.  First, Javascript is not as easy as Ruby.  There are many more 'gotchas' in Javascript.  Javascript is 'less clean' than Ruby.  If you are learning Javascript right now, you will more than likely be learning it because of Node and SPA applications.   If you are learning it to use with Node, you will be writing asynchronous javascript, you will be dealing with promises, you will be scratching your head A LOT :-)

Get the Webstorm IDE.  When I only used Ruby I loved Sublime Text 3 text editor.  When you are dealing with Javascript, you should take ALL the help you can get.  Everything you can do with an IDE you can pretty much do with Sublime if you install enough packages and tweak enough of the custom settings.

I started noticing myself tweaking Sublime more and more, until I finally thought to myself: "Why am I making my text editor into an IDE???"  I think you pretty much need an IDE if you are a beginner learning Javascript, do yourself a favor and get Webstorm it is specifically made with Javascript in mind.  I use it everyday at work, it is really amazing and I wouldn't go back to Sublime.

Also if you are going to learn Javascript, learn how to leverage Javascript libraries like:

Underscore
http://underscorejs.org/

lodash
https://lodash.com/

Ramda
http://ramdajs.com/0.18.0/index.html


No company is going to have you writing triple nested loops, if you find yourself writing them, stop and learn how to use a library :-)

Yes, people will say you should spend your whole life learning plain Vanilla Javascript before ever using a library and leveraging their methods.  I say don't spend 2 years of your life coding in your parent's basement learning Vanilla plain Javascript :-)

Learn to use the libraries and built in methods. Again, no company wants you writing multiple nested loops, that some other poor developer will one day have to try and figure out after you've left.

If you can find a method, use it.  If you can't, then write your own it's that simple.  If people email me saying they want to hear more about learning Javascript, I will write a blog post on how to easily pass Free Code Camp's Bonfires.

Keep coding peeps, you can do this!

-Josh

Wednesday, December 2, 2015

Former Blacksmith helps people land coding jobs

Hey guys I just had to let you know that my coaching client in Denver just got hired as a Test Automation Engineer!  His first day is on December14th.  I'll probably give him a week to get settled in at his new job before 'spilling the beans' on his journey/story.  Expect another update near Christmas time.  I love coding and my current role as a Software Engineer in Testing, but I love just as much helping people land there first coding position.

I also think people who are learning how to code would almost be better off landing a QA role instead of a web development role as their first professional position at a company. 

Most companies are slowly moving away from manual testers and more and more will not hire QA Engineers unless they have at least some level of coding ability.  If you land an entry level QA role you will more than likely start writing automation scripts using Selenium early on in your QA career.

I think a great way for beginner's to move toward a development role is by learning QA well, and then writing automation for a web application.  Testing may not sound as 'sexy' as web development, but it makes you look at a web application in an entirely different way than a developer does.

There are also many hats that QA's can wear, for example you may start off doing only manual/functional testing of an application, until you have more product knowledge.  You may then start working on the automation team ( assuming you know how to code ).  Other QAs do some security testing of the application, using security tools and plugins like:  XSS Me, Burp, and Tamper Data, among others.

The point is if you are new to learning how to code, there is a lot to learn.  Why not take some of the pressure off of becoming a full blown web developer as your first position, and learn to code in smaller 'bite sized' chunks?  Learn how to code, then land a QA job.  If you still want to be a developer after 6 months to a year, talk to your company about moving into a junior developer position.  The key is learning to code, and then finding a good fit for want you ultimately enjoy doing with that coding skill set.

I personally like doing automation and find it challenging and fun.  I think 'noobs' should not turn there noses up at the idea of starting off in a QA position.  Who knows you just might love it :-)

Keep coding peeps, you can do this!

-Josh

Sunday, November 29, 2015

Why I switched to an IDE instead of Sublime text editor, and you should too!

Yes I know, I have always been a huge fan and supporter of Sublime Text 3 text editor and all of the various plugins, but I am moving away from text editors in general and here's why.

NOTE: When I say IDE's, I really don't mean just any IDE, I mean Webstorm for Javascript, and Rubymine for Ruby.  If you are using other IDE's like Eclipse, then I think there isn't nearly the advantage that Webstorm and Rubymine give you.


IDEs do more than text editors, even Sublime Text 3 with all the plugins I had installed.
IDEs help you code easier and faster and have more code intelligence with refactoring and which files you changed on Git in an easier format.

Honestly though there is really only one reason that I switched to IDEs in the past year.  This is something that most people will never actually admit, but really is one of those 'dirty' truths of the real world:

If you are dealing with a huge code base that is crappily written or are working with 'spaghetti style' written code, an IDE will save you SO much time and frustration.  This is the main reason I switched. The ability to simply hit 'command + b' and follow spaghetti code quickly to see where it goes and try to wrap your brain around it as quickly as possible.  Now you may be thinking that this is stupid to switch to an IDE because you deal with crappy code everyday, but as much as you people want to deny it, it is the reality.

The other reason I switched to an IDE is that it made finding errors much faster and the colors changed on the methods depending on whether or not the method had issues (like I had a typo).  In a nutshell speed and convenience to deal with crap code written by many people over many years is why I switched to an IDE.  If you only deal with code written by 'code angels' then please by all means stay with a text editor.

After saying the above, let me be clear that I absolutely LOVE Sublime Text 3 and use it to open files from the command line or use VI if I am SSHing to a server.

The above is 100% true.  There are 2 types of coding that I've seen since getting into tech, the real world coding that I see in the 'wild' and then there is the tutorial code.  The code written when people are giving a tutorial and are able to spend an unlimited amount of time to refactor the code.  That is not to be negative, just to say the reason why I switched to Webstorm and RubyMine.

The real reason people don't want to switch to an IDE is that most IDEs actually suck.  If you want an awesome IDE they cost too much money.  The only way around that is to hack the IDE which I don't do and don't recommend.  The other method is to use a 30 day trial version on a Virtual Box and then simply keep resetting the date back every 30 days so that you have in essence an unlimited trial version. I also do not recommend that method either.

My RubyMine IDE and Webstorm IDE are 100% legit and I did not spend any money to get the IDE legal registrations.  I am not going to tell you how I did this, only know that I did absolutely NOTHING unethical and in fact 100% legal to accomplish my goal of getting 2 IDEs for free and registered in my name 'Joshua Kemp'.

The reason I am not going to tell you how I did it is simple, it's NOT rocket science what I did and also I want you to realize that actually the reason you are still using a text editor is because of the cost.  If it weren't for the cost, then you would be using the latest and greatest IDE.

If that is the case, then you should NOT let the money issue stand in your way, you need to pony up the money and pay for the IDE license or figure out another legal way.  I really recommend a good IDE and think every beginner learning to code should use one.

Keep coding peeps, you can do this!

-Josh


Tuesday, November 24, 2015

Cody Hired!!!

Hey guys, first apologies for not blogging in so long, trust me when I say I have been busy.  The past 2 months have probably been THE busiest months of my entire life.  My brother Cody got hired 2 weeks ago, I wanted him to let him get settled in as a contractor for Fuji Film here in Durham as a Software Engineer in Testing, before telling you :-)

He is loving his new job and new life, coming from working retail jobs for the past 6 years, to actually writing code and getting paid far more money!  Let's just say he is way above cloud 9!!!  There is soooo much that I want to write about and will in the coming weeks.  I been so busy, that I have only been able to keep up with helping my coaching clients and working full time.  I apologize to the people I have not emailed back and will try to do so tomorrow :-(

I just want to really encourage people that you can learn how to code regardless of your background, If you are willing to work extremely hard and put in the time.  Coding is like anything, if you practice it you will get better and better.  Even if you come from a retail, painting, hotel management or Blacksmith background, you can learn to code and get hired!

I have more to share later this week in some up coming posts about some things that I have changed my opinion on.  I think it will be helpful to other people who are starting out on this 'learning to code' journey.

Keep coding peeps, you can do this :-)

-Josh