Hiring blues

Finding good engineers is getting increasingly more complex. It’s clearly an employee’s market. Even in an employer’s market good engineers are tough to find, they all are gainfully employed. Today, finding a job for a good software engineer, is like shooting fish in a barrel, s/he can get multiple offers in a matter of days. And we, the hiring managers, are facing a race against all odds, and, as if competitive pressure was not enough, we have to deal with an incredible pollution of the candidate pool. For every decent candidate, we see dozens of people who are not remotely qualified, or worse than that, frauds or con artists:

  • A Java developer who did exceptionally well on several phone interviews, including deep dive technical discussions, relocates to IL and arrives in the office. Turns out he is not capable of doing any of the tasks he so eloquently explained over the phone. More so he cannot answer the same questions he did just a couple weeks ago… Amnesia? Don’t think so. Lesson learned – use a webcam for the interviews.
  • We hire a contract developer after several rounds of webcam interviews. He asks to do work from home in Seattle since relocation to MN is very difficult for him at the moment. After a few hiccups in onboarding he starts and right from the get-go begins missing one meeting after another. It goes on for a few weeks till one of the team members notices that when we talk with the contractor during morning hours we can hear a great deal of background street noise, and during day time calls the street noise subsides. A little bit of research discovers the reason behind the phenomena – the contractor is connecting from India. Lesson learned – bring them onsite.
  • Ok, we learned our lessons, we interview a great BA, she offers superb skills, personality, and experience. We fly her to Chicago for f2f, she does even better. We put out an offer, moving as fast as we can… We pull all the stops negotiating a great package. And finally, drumroll please, the candidate accepts the offer… from someone else. I guess we covered the tickets for her to interview with a few competitors as well. Lesson learned – you can’t win…

Of course, it’s not all gloom and doom, as a matter of fact we recently bought in some fantastic talent. I am just a bit grouchy after talking a with senior candidate who told me that “AWS is a not-a-sequel database” and a senior QA automation candidate who after “7 years of experience in white, gray and black box testing of web applications” cannot name a single http method.

Well, TGIF, I am sure the next week will be great and I’ll meet someone who can tell the difference between an abstract class and an interface or at least tell a green field from a cold steel rail…

Five Ways to Screw Up Your Content Outsourcing

regret-nohingAs our world becomes increasingly virtual, and therefore more connected, more and more companies are considering content outsourcing for a variety of tasks. This can be a truly great decision for any company, but there are also plenty of ways to screw it up.

For example, a client of mine decided to outsource his company’s blog. He hired a few providers on eLance and moved forward without establishing expectations for quality and even without defining when the work should be delivered. It turned into a complete nightmare after months went by with very few acceptable blog posts. Eventually my friend had to find a new writer. That put his company months behind schedule to meet their viewership goals. In fact, they ended up losing many of their existing followers due to the slowdown in content publishing.

Nothing like that ever happened to you? Maybe something similar? Well, here are five ways you can be guaranteed to screw up your content outsourcing:

Don’t take the time to identify what you really need. Before even beginning the process of outsourcing, you need to identify what it is that you need. Use S.M.A.R.T. approach to identify objectives and criteria for success. If you don’t know exactly what you are looking for, it will be impossible to find the perfect person/company for the job.

Don’t do your due diligence. Take the time to research the provider. Ask for examples of their past work. Have them provide references. And spend the time necessary to find out if they really have the skills and knowledge required to do the job well.

Don’t set up clear expectations. Before your new provider ever begins working for you, you need to set up clear expectations. Your S.M.A.R.T. objectives will coma handy at this point. Have specific tasks and milestones for when the work needs to be completed or sent in for review. Miscommunication of expectations can easily kill what could have turned out to be a fantastic relationship.

Don’t get guarantees. Have a contract with your provider that clearly establishes what is expected and that offers guarantees of the quality of work that should be delivered. This helps protect both of you.

Don’t get buy in from everyone. Unless you are a sole proprietor, you likely have at least a few other decision makers that need to be consulted before making a decision regarding outsourcing. In order for outsourcing to be successful you have to receive buy in from all of the people that have a major stake in the outcome.

What do you do to ensure your content outsourcing success? What have been your failures? Or successes? Please share your personal stories and suggestions in the comments below or send me an email at krym2000-po@yahoo.com.

Squeezed between Automation and Outsourcing

rise-of-the-machinesFrom a standpoint of an IT professional offshore outsourcing used to be the biggest threat, a menacing ever-expanding presence that reduced salaries, profit margins, and market size. Large chunks of traditionally local business such as system administration or DBA went offshore into the hands of far less expensive professionals. High salaries and practically guaranteed employment for sysadmins became attributes of the past. And if offshore was not enough, IT industry got hit with a new wave of commoditization – dramatic changes brought about by virtualization, cloud price wars, and IT automation. And these factors affect offshore vendors with the same vigor as they impact local provides and individual contributors here in the USA.

Not so long ago to support a small data center powering a $100MM a year eCommerce operations I needed 4 full time sysadmin resources, had to bring contractors for solving specific skill or peak load issues (that averaged to 2 FTE per year), plus 2 full time DBAs, InfoSec consultants, and a full time IT manager – roughly 10 FTEs. All busy and charging market rates. A roughly two times more complex system supporting $250MM in revenue is operated today by two sysadmins, remote DBA team with the cost of less than a half of an FTE, and a few fractional FTE outsourcing partners for security, monitoring and so on. With very conservative estimates no more than 5 FTEs all together. Thanks to VMWare and Puppet volume of mandarin IT work decreased dramatically with inevitable impact on headcount needs. In meanwhile the quality of service went up a great deal as well. The focus can be now on utilization and productivity rather than firefighting.

And that’s just a beginning. Puppet is a great automation tool but it’s doesn’t take us far beyond copy and paste mentality, new AI powered technologies are taking IT minutia by storm, take for example IPsoft “autonomic IT management services dramatically improve efficiency while driving a predictable high quality of service. We guarantee the outcomes you specify. You will see a positive business impact. IPsoft service models provide the outcomes you need, across your entire environment or one specific tier. Virtual engineers have already been deployed for 1 in 20 Fortune 1000 companies. They deliver IT savings starting at 35% while freeing human engineers to work on functions that drive value.” Freeing human engineers to work on functions that drive value OR look for a new job…

That trend is fantastic for the businesses, not so much for junior IT professionals who are just entering the employment market and even more experienced sysadmins, it’s not a good news for a broad range of IT providers, not even for offshore vendors. The rumors are that in less than 10 years there will be no more IT jobs for US to outsource. You do not need to have a crystal ball or resources of Gartner to see the writing on the wall – IT job landscape is changing and it’s becoming far more challenging with higher demand for advanced skills. Squeezed between Automation and Outsourcing IT professionals to remain marketable must invest in several core technology skills (automation, scripting, virtualization, complex networking and storage) and even more so in soft skills, the only differentiator that has a chance to help them against Rise of the Machines.

Offshore developer rates or how flat is the world?

Substantial difference in employee wages remains one of the main reason for US companies to go offshore. And thus the question of rates comes up often and yet, finding an answer to it remains a never ending straggle. The last few years thrown a few new dimensions in the salary picture making the rate discussion even more ambiguous and complex (I’ll expand on this point shortly). So I was quite excited when an outsourcing advisory firm sent me an offshore pricing guide. Unfortunately, the guide turned out to be rather shallow filled with dubious statements such as: India tends to be inexpensive, due to the huge labor pool; Russia/Ukraine/Belarus tends to be more expensive, due to high education and skill levels; South America tends to be expensive, due to similarities in time zone, language, and culture. Oh, well, no easy answer.

So what really goes on in the world of offshore rates in year 2014?

First, let me expand on the topic of “new dimensions”. Well, they are not new, they just became far more pronounced and in many cases the pivotal factors – changing compensation landscape driven by the ability of people to land first class jobs. Top ISVs and cash rich technology companies like Google or Microsoft took a very simple approach to offshore salaries – “we don’t care where you live, we care what you can do for us”, and just in a few years, that turned offshore recruiting on its head. For example in India 50 lakhs (that’s roughly $100K) a year salaries are no longer unheard of.

50 lakhs is also about 10 times an average salary of a software developer working for company like Tata or Wipro which averages depending on skill between 400,000 and 600,000 rupees a year (1 lakh is 100,000 rupees). At this point only a few chosen ones can get this kind of money, you have to be far above average in your IQ, live in one s/w hubs, and be lucky enough. Such an incredible hike in the upper bar naturally established a new frame of reference and much higher expectations. Good developers are no longer afraid of asking for twice the salary they could get a year or two ago.

Continue reading

Bookshelf Revised

As with any topic a number of books covering offshore outsourcing could be intimidating. To simplify a task of picking a few “must-read” books, the books that delivers most value, I’ve chosen about 20 titles that give you the best bang for a buck. That list was created a few years ago and needed some refresh work. Naturally my own book had to be added to the list, plus I found a few more very helpful books. Let me mention a couple that are worth considering:

  • Software without Borders: A Step-By-Step Guide to Outsourcing Your Software Development By Steve Mezak. It’s a solid pragmatic guide for offshore outsourcing. The book offers plenty of practical advice in areas such as vendor selection, keeping control of the engagement, SDLC, etc. Written by experienced S/W professional / outsourcing advisor the book is indeed a step-by-step guide. In some areas it overlaps with content of my book, in some it offers more information, e.g. it offers a mode detailed approach to country selection, and goes in a great deal of details about packaging requirements for transferring them to offshore team. Some of the material in the book is a bit outdated and it misses a few critical points related to traps and pitfalls of outsourcing but with $10 price tag and lots of helpful info it could be a great addition to your library.
  • If you work for a large company and offshore outsourcing is a major portion of your job than Outsourcing Professional Body of Knowledge – OPBOK Version 10 is a “must have”. Modeled after famous PMBOK the books goes in great depth on many topics that are particular important for large outsourcing initiatives.
  • And of course Tim Ferriss’s “The 4-Hour Workweek: Escape 9-5, Live Anywhere, and Join the New Rich.” This book is a definitive guide on “outsourcing your life”. While this book has very little to do with professional offshore outsourcing I found it very helpful in several aspects and generally fun reading. Plus the volume of dopamine that reading the book will infuse in your brain is astonishing and probably can only be challenged by pinterest or instagrams of this world ;)

To simplify navigation I put the reference to the list (organized as Amazon book store) in the main menu of the blog – just click on Bookshelf and add ‘em all to your shopping cart, well, at least the first one :)  Note: in the same store you will find my book-lists on a few other topics such as Management, Leadership, SDLC, Negotiations, and others.

Blogroll Revised

I’ve been off my blogging duty for almost a year; needless to say the blog has lost some of its pooling power, traffic, and most important its up-to-date-ness. And even though my focus has never been on “current affairs” and most of the content here is not very time-sensitive I owe to myself and the audience some serious housekeeping / refreshing. The first task is to revise the blogroll – most permanent battery of links on the topic. Unfortunately some of the blogs I used to enjoy are no longer active and some do not even exist anymore. The good news is that some of the old-timers are still going strong, and there are a few new ones with interesting content.

So RIP “Go East – Outsourcing to China”, “Offshore Outsourcing Center”, “Offshore Outsourcing to China”, “Offshore Outsourcing World Blog”, “Shared Services & Outsourcing Network”, “Software Sweatshop”, “The Dao of Outsourcing”… These blogs no longer exist or have moved on to a completely new topic. Sadly, a lot of casualties; and some really interesting material is no longer available.

It looks like a few blogs are dormant or reached the end of life such as “Services Shift by Robert Kennedy” but given that some good data / info is still there I may keep some of these links.

And the good news is that nature abhors a vacuum and thus we have an opportunity. Either my blog will become wildly successful again or we’ll see even better blogs coming up soon enough.

Application Release and Acceptance Guidelines

Oh, not again… How many times do I have to go through a basic process of application release and acceptance? Yet, here it comes again. Lack of understanding of software testing basics, misunderstanding of the roles severity and priority, bizarre views of the acceptance process. It seems like déjà vu all over again ;) And so far I’ve seen it with it with every small offshore s/w development shop that uses waterfall or similar type of process.  So with no more ado let me just state these ABCs of the application release and acceptance…

To accept or not to accept the software should not be a philosophical question. As a matter of fact it should be as subjective as reasonably possible. To stop feelings and egos getting in our way we need to start with setting up a process of release and acceptance. For example, something as simple as that:

Release & Acceptance Process

  1. Offshore team delivers the software change package (SCP) to my secure FTP site. The SCP must include properly named and versioned build, configuration files, metadata, resources, and release notes.
  2. My release team takes the SCP and installs it on User Acceptance Testing environment. If installation is successful release team notifies offshore team. Project Manager and QA/UAT team. If install fails the release team notifies offshore team and Project Manager.
  3. QA/UAT team performs testing according to test plan / strategy that is based on the nature of changes included in SCP. If the system passes Acceptance Criteria QA/UAT team notifies offshore team, PM, Release Team, and Product Manager and clears the SCP to be promoted to staging/production. If the system fails to passe Acceptance Criteria QA/UAT team notifies offshore team, PM, and requests a replacement SCP.

Continue reading