Monday, February 2, 2015

Looking for a Rails Job

I’m looking for a Rails job, and the process is not going as easily as I had expected. In this blog entry I will describe why I’m looking, how I’m doing it, and what I’m going to do to improve my job prospects in the future.


I not just some one-off guy hoping to cash in on the Ruby and Rails bandwagon. I’ve been building web applications since the last century and I’ve been developing Rails applications for the last 3-4 years. Cool apps. One was theshoplift.com -- a social shopping site targeting the fashion industry. Another was a K-12 online education application that is used worldwide. And another was the Rails Active Record adapter for the IBM AS/400 (a.k.a. IBM i.) Collaborating directly with IBM, I worked on the low-level Ruby and C code required to access IBM DB2 for i from Rails. So why am I having problems finding a job? I’ll get to that. But first let me describe how I’m looking for a job or consulting gig. And, please, post suggestions. If not for me, then for others that may read this post as they are also looking for Rails work.


How I’ve Been Looking:



Rather than creating the standard Microsoft Word document version of a resume I’ve been using two Web sites as they provide, essentially, dynamic resumes: careers.stackoverflow.com and linkedin.com. And then, in cover letters, I paste in the following tiny URLs: bit.ly/1zuir1u and lnkd.in/d5MYeKq. When I need a hard-copy of a resume I simply export my LinkedIn profile to PDF. Perhaps I should get it professionally enhanced but I believe the LinkedIn format is pretty decent.


I’ve been searching for jobs from the following sites:


  • careers.stackoverflow.com
    • This is my preferred site as it does not include head hunters and the companies making the job post seem more interested in quality development (in that they often are not the monolithic fortune 100 IT organizations.)
  • Indeed.com
    • I’m not too crazy about this site but I have receive a few calls from head hunters that found me on indeed.com
  • dice.com
    • Dice’s search is pretty good and, as they are well known, they havemany job posting.
  • hired.com
    • Hired is a great idea but it is limited to jobs in major metropolitan areas.
  • toprubyjobs.com
    • There are not a lot of jobs on this site but it is a solid and genuine job site.
  • cybercoders.com
    • Cybercoders has a stable of head hunters that work with you. There are a lot of jobs on this site and they also have a decent email alert system for newly added jobs. When you select a job to apply for, cybercoders.com prompts you to flesh out responses to specific questions -- which you normally would flesh out in a cover letter. I like that strategy as the prospective company gets immediate feedback on questions for which they are most interested. It does, however, remove some opportunity to humanize a response that you might otherwise have put in a cover letter.
  • flexjobs.com
    • This site actual costs $14 or so a month but, as it is specifically adapted for telecommuting, I went ahead and paid $14 for one month. Probably a third of their viable jobs, though, are already in cybercoders.com. Nevertheless, I have responded to some job posts that were on flexjobs and not on other sites.


Salary



So what salary should I ask for? Difficult question as I’ve been making 150-165K for the last 3 years or so. On the other hand, I’ve had to struggle with invoicing and looking for subsequent gigs. Also, understand that working for yourself doesn’t mean you are your own boss: It means you have many bosses.


Anyway, to figure out the salary I’d be comfortable with, I used the following algorithm:
  • Start with 150K
  • Minus 50-100% of the cost of my health insurance (which almost 1K a month)
  • Minus my average consulting income for 3-5 weeks with consideration for vacation and holidays -- which I almost never took working for myself
  • Minus 8K for self-employed FICA


After doing the above math and, considering the relief from the headaches of working for myself, I came up with 1xxK. But is 1xxK a reasonable salary for a Rails developer with my experience? The only salary site I could find that listed Rails salaries (payscale.com/research/US/Skill=Ruby_on_Rails/Salary) listed a Senior Software Engineer salary of 1xxK. But that was the median salary. When I clicked on the Years of Experience option, I discovered that the median salary for my years of experience is 125K. I also did an empirical survey by looking at a dozen or so salaries ranges of Rails jobs on cybercoders.com and found that 1xxK was regularly within scope.


What Am I Doing Wrong?



I had thought that It would be easy for me to find a job. After all I leave a long trail of successful projects and I have over 20 years experience. My problem is that, I short, I got lazy with my marketing. And I sort of knew it. For the past half-dozen years or so I’ve been too busy immersing myself in Convention-over-Configuration frameworks (I did Groovy and Grails for 5 in the Java marketplace years before moving on to Rails 4 years ago.) I pretty much thought I was that guy in “Field of Dreams” who heard “If you build it, they will come.” Well, I built it. A half-dozen times I built it. But they are NOT coming. The reality is: They won’t come unless they’ve learned about it from some form of marketing.


For my recent 6 years of freelancing, all my work has come from word of mouth. I’ve come to rely on that. I guess I even expected it. Now, I am getting interviews and I’ve come close to getting a couple of jobs. But I’m limited by a couple of things:


1) I been working remotely since 1998, and I want to continue that
2) My desired salary is close to the high end
3) The breadth of my resume may make some managers consider me overqualified
4) The length of my resume clearly shows that I’m in my 50s and there may be some age discrimination
5) My github profile lacks public Ruby and Rails projects


That last item -- my lack of open-source Ruby code for companies to review -- ends up being a big deal.  These days, many companies start the applicant filtration process by looking at github code. My issue with that is that, while I have plenty of production Rails application code on my github account, those applications are all private and I legally can’t make them public. What I offer to prospective employers is to walk-thru my git Ruby code in a web meeting. But, before I have the opportunity to suggest the walk-thru, most companies have already pressed delete on my resume submission due.


What am I Going to Do About It?



This past Saturday I listened to a Ruby Rogues Rails podcast “187: Marketing Yourself as a Software Developer” (devchat.tv/ruby-rogues/187-marketing-yourself-as-a-software-developer-with-john-sonmez).
The podcast featured John Sonmez, author of the book “Soft Skills: The software developer's life manual” and creator of simpleprogrammer.com. The podcast told me what I already knew: I had neglected marketing myself for the past 6 years.


I have a blog, denoncourt.blogspot.com, but my last entry was December 12, 2010. And that post pre-dated my entry to the Rails market.
Why didn’t I keep up my blog? I was too busy billing 40-60 hours a week and having a blast writing cool Rails applications. One project turned into another and, after those projects completed, I was, for the first time in 5 years, in a situation where my word-of-mouth market failed to provide my next gig.


John Sonmez, in the podcast I had listened to, said that the standard reticence to author a blog is coders belied that they can’t write. Well. I can. I’ve published several books, over 200 articles, for several years I was a full-time editor of a technical magazine, and, in the early 2000s, I was also the editor of the highly successful Eclipse Tips email newsletter, which, pretty much, is the same thing as a blog.


Bottom line. I’m blogging again.


What am I going to blog about?


The more I thought about blogging on Rails topics, the more excited I got. Here’s a short list



  • Rails versus Grails: After doing Grails full-time for over 5 years and Rails for 4 years, it’s time for a comparison
  • Ruby gems that I’ve used to solve problems
  • Fill the void of of strategies for elegant development of CSS with SASS. 
  • IBMi-specific solutions to Rails development issues


I will, in a subsequent post, provide a more detailed list of blog topics I plan to cover.


The Gist of Open Source Git Code



What am I going to do about my lack of open source code on github? In association with Ruby and Rails blog entries, I will be building mini Rails applications that solve one problem. The Read Me for each of those applications will essentially be the content of the blog post where it walks you through the manual creation of the application. The completed version of the mini-application will, of course, be available for online review and download. This is a good idea even if no one ever uses my mini apps. It's a good idea because I’ll have an online resource that will show how I figured out a coding technique or the proper use of a Rails gem. But, in terms of marketing, those git apps will be searchable.

In the late 90s and early 2000s, while traveling around the country delivering Java seminars, I would often say: “I’m very good at writing trivially tiny applications that do but one thing -- teach a technique” Well, I have that skill and now it’s time for me to put it back to use.


The gist of programming: github also has a thing called gists. github, a the page https://help.github.com/articles/about-gists, says “Gists are a great way to share your work. You can share single files, parts of files, or full applications. You can access gists at https://gist.github.com.”
So should I have a technique that doesn’t warrant a full Rails application, I will write a gist.


Anyway, I’m back. I’m back in the blogosphere.


3 comments:

packetguy said...

I read your post with a lot of interest. I am in a similar situation, thanks to the demise of a 25-year client, and I'm encountering similar problems with PHP software development and network engineering, my staples for the last 30 years.

Last year I was lucky and had a big project that paid extremely well, although it had an end date in October. Since then I've been doing a lot of small gigs, but as you know, these tend to consume a lot of time without generating a lot of profitable income. I also have a small income stream from an ISP I run.

I hate to say this, but I think serious age discrimination is going on. I have a young-sounding voice, and often I've secured a gig with nothing more than email and phone conversations. Then I show up, and more than once the customer has reacted with "Oh, are you helping our new consultant?" (which is me!) Or there's an awkward pause, and they say "Can we keep really close track of the billing?"

Clients naturally expect software developers to be young, and they are hoping that they are "getting a deal" when they find someone highly recommended. But when they find that I am a white-haired wizard, they become concerned about whether I am as current in my field as the twenty-somethings, or too expensive.

I'm not sure of the remedy to this yet. I don't want to be a manager, I want to code.

Your blog post is pretty brilliant, and it shows how good we had it, and how we could still have it good, if we put some effort into blogging. I'll be keeping my eye on your blog!

Don Denoncourt said...

Thank you, Packetguy

I now think I'll shave off my white mustache -- the 80s are gone anyway.

Seriously, though, I'm not happy hearing that someone else believes there is IT age discrimination. I've met plenty of young coders that stopped learning new technologies after they finished college. What companies need to look for is a developer that is constantly learning. When asked in interviews what my best skill is I tell them "My ability to learn new technology."

I've also said, in interviews, that most of a developers value can be measured in what they've done in the past two years. I tell them that, while I can brag about what I did 10 or 20 years ago, let me talk about what I did in the last 2 years and what I expect to do in the next two years.


Karthika Shree said...

Thank you for taking the time to provide us with your valuable information. We strive to provide our candidates with excellent care and we take your comments to heart.As always, we appreciate your confidence and trust in us
AWS Training in Chennai