Saturday, March 26, 2016

End of coaching, start of Ethical Hacking journey...

There is only so much time in a day, we all have the same amount, doesn't matter who you are or how much money you make :-)

My original goal with learning to code was to become a senior Rails developer one day.  I still like Rails and love coding, but I am turning my focus towards one day becoming an Ethical Hacker.  This goal will take a while I am sure, as breaking into the field is much harder than getting hired as a developer.

I love coaching and have several clients that I am currently working with, I love seeing people get hired and change their lives for the better!  I spend my evenings always learning something new, whether it is coaching a client or something related to programming / testing.  I have a lot to learn if I am ever to get hired as an Ethical Hacker, and as such need to create more time for myself to grow.  I have decided to stop coaching people from this point forward.  I will finish the coaching plans that I have with current clients, but I will no longer be accepting any new clients.

I have helped around 30 people land testing or development positions since starting my blog.  In my book 'No Degree, No Problem' I share a lot of knowledge about switching careers, but I think down the road I will write a new book that gives secrets that I kept for coaching clients only.  Secrets that make landing a job mere child's play :-)  I don't have the time to write the book now, but I think I will write it if I get enough interest from people.  I think the book would change the way that people go about trying to get an entry level job in the testing or development field.

Normally I don't ask for help on the blog, but I have decided since I have many thousands of readers, why not ask for advice myself with my Ethical Hacker journey.  I have Googled the term, I have read many online articles and sites suggesting certifications, but I would love to hear from someone who actually got hired in Cyber Security.  If that is you, I would greatly appreciate any and all advice that you can give me!  My email is: joshuakemp85@gmail.com

Again, this will take me some time I am sure, I will keep you all posted as things progress.  I still love coding and use Ruby almost everyday which is my favorite language, I still plan on blogging as usual!


Keep coding peeps, you can do it!

Friday, March 4, 2016

How to make work easier and more productive.

I landed a couple of more coaching clients and have come to the realization that I can only coach so many people at any one time.  As of right now, I can only take on 1 more client ( until a current client gets hired ).  After 1 more client, I will be starting a wait list, first come first serve, if you want to be on that list let me know.  I never want to get so busy I can’t give high quality, individual attention.  

I was hired in August 2013 at ZipList in Reston Va, as of March 4th 2016 I have worked at 4 companies.

Ziplist - Where I wore many hats as a junior developer
Perfect Sense Digital - Where I started learning automation using Ruby
Fidelity Investments - Where I used Javascript to automate a SPA application
IBM - Where I am currently

 Through all of those companies I have learned a lot and have found common things I do at each new job that have helped me to be significantly better and more productive at work.  I hope they can help you as well!

Pocket - you find something you want to read but don’t have time right now.  I use  Pocket browser Addon for Fire Fox and Chrome, as well as on my iphone.  This way I can always find what I want to read.

Evernote - Simialr as above.  I use Evernote for personal notes, potential ideas, blog posts, I even have a note for interesting things I learn about Ruby :-)  These notes aren’t tied down to any one machine and you can use the app on your phone as well to sync.

Here's an example of my Evernote:



Bookmarks - I used to hate Bookmarks, but now I love keeping a detailed list of all the URLS I may need, especially when at a new company.  I make folders for ruby, rails, automation, hacking, work, and save URLS that I want to reference later.

Alfred - Alfred is basically a tool I use for web shortcuts. I used to use a lot bash shell aliases, but find myself using Alfred more to quickly and easily go to places on the web.  You can even add different parameters to the end of a URL to go to different JIRA tickets.

Here's an example of how to add a custom Jira ticket search.

Go into the Alfred Preferences:


Next add the 'custom web search' in this case for JIRA:

Hit the 'option key and the space bar' to open Alfred and call the Jira URL shortcut:




Chrome - I used to get to a new job and then have to download and slowly add all the things that I liked on the new computer.  I realized that if I sign in as my own profile on Chrome browser that no matter where I go or which computer I use, I always have all the addons and everything I like without having to do any setup!

I used to use a super long bash alias called ‘sd’ ( start day )  I would open my computer at work. Open the terminal and the first thing I would do is type ‘sd’.  I would then go get a drink or use the restroom while that long alias would open all the applications that I typically used each day, open up all browsers I wanted open and then go to the most common URLS that I needed to look at first thing in the morning. 

Now I use some bash aliases, but for common URLS that I need open each morning, I simply use Chrome’s built in settings and have it open the 4 URLS I look at every morning by default whenever it opens up Chrome.

Here's my browser toolbar just as an example you can also see the Pocket icon:


Here is where to set the deafult URLS to open in Chrome:




I still love Bash aliases ( shortcuts ) to go to any place in the terminal quickly. For example
if you have a developer section where you always write your code simply have a word like
‘developer’ that takes you to that PATH without having to type in the long PATH everytime.

Here's an example of some ~/.bash_profile aliases that I use:




I also like the Brew add-on ‘ack’ its like a much easier version of grep.  You simply type in a phrase ( string ) and it will search in that folder and all sub folders for whatever you are looking for.  It also highlights all the matches.  Very simple, very easy, I love it!

Here's an example of me using 'Ack':




As a general rule, whenever you do something more than 3 - 4 times, you should try to find some way to automate it.  One of the biggest failings I have had in this area was not using a Gmail signature.  Instead every time I would write my name and a farewell ending.  I wrote that manually thousands of times till just recently, when I  realized that I should use a signature and save time.

All these things are small, but they add up and make you faster and more productive.  It also helps you to start looking for anyway to automate repetitive tasks.  If something can be automated at work or on your computer that is simply boring and redundant, you should do it!

Learn to type. it will make you WAY more productive and will help your neck to stop hurting from hunching over looking at the keyboard.  In August 2014 at my first job after ZipList launched a new version of their app, I was tasked with responding to 100 - 200 emails every week.  I understood why they needed me to spend all day trying to reproduce bugs and then sending a response back to the user, but I soon found it very boring.  

In order to deal with the boredom, and because my neck was killing me,  I decided to simply stop looking at my hands anymore, cold turkey.  I seriously sucked!  When I went on http://play.typeracer.com/  I averaged 12 - 14 words per minute.  I was so slow people at work asked me what I was doing sometimes ( apparently they noticed me using the delete key every other letter ) 😃

Long story short 18 months later I just got the greatest compliment from a co worker who said:  “Wow, you type really fast!”  I don’t really, I type around 50 WPM.  Typing is not as powerful as coding, but it really does help you to have a much easier time and be far more productive while working.  Also if you are going to be using a computer for 8 - 10 hours per day you should learn how to type.



You don’t have to do my method of learning to type ( no training or typing courses ) just cold turkey not looking at my fingers anymore.  Try to learn to type some way that works for you!


Keep coding peeps, you can do this!