8 steps to safeguard against off-shoring as a Java developer

“Offshoring Will Kill 1.5 Million IT Jobs by 2017” – according to new research from The Hacket Group.

Off-shoring means transferring jobs from Country-X to countries that have lower labor costs, wage rates and taxation than Country-X. This is regarded as a big productivity gain for firms as they reduce their costs and increase their profits. Companies also offshore time consuming and repetitive operations to offshore to free up their local work force for more strategic & challenging projects. As an employee, you have no control over companies making those decisions. Hence, there is not much point in whining about off-shoring. But you have control over surviving through off-shoring by proactively applying the following 8 steps.

#1. Being a go to person

If you can prove that your value extends beyond your list of job duties & technical skills into areas like business know how (i.e. aka domain knowledge) and being a change agent/facilitator (e.g. facilitating agile development practices, change agent for BigData & analytics, etc), with good soft skills & great attitude then you can become one of those few remaining team members to survive lay-offs as result of off-shoring. You might even be given greater responsibilities and opportunities in spearheading the off-shoring process. Often drawing the same salary based on Country-X with additional relocation allowances, and living in countries with lower cost of living. The reverse is true as well for the multi-skilled off-shore employees to go overseas to understand the business process and get the ball rolling in facilitating the off-shore model.

#2. Becoming a consultant/contractor

No matter what percentage of the work-force is off-shored, companies always need short-term consultants/contractors to meet unexpected workloads/deadlines/skill shortages. Often companies favor consultants with strong technical focus, system familiarity & good business/domain knowledge due to their prior engagements. So, the companies need to hire temps. So, building a good network and rapport with a handful of companies you had worked for and people you had worked with, you can get repeated short to medium term work assignments. So, stay connected with your former employers & colleagues via LinkedIn and regular catch-ups as much as you do with the technical trends & sought-after technoligies.

#3. Acquiring specialized skills

There is an over-supply of Java and Spring developers out there. So, it really pays for you to have Java + “a number of specialized sought-after complimentary skills” like

1) BigData & Analytics.
2) Hadoop eco system.
3) Low latency application development.
4) Business Intelligence, SOA, BPM, ESB, AWS, & integration patterns.
5) JavaScript, Scala, etc.

to stand-out. Java and Spring can be self-taught, but only a handful get the privilege to work with sought-after commercial & open-source tools in a commercial environment. Now a days, the term “Full stack developer” gets thrown around. This means you can build client side web based GUI components using HTML5, CSS frameworks like Bootstrap, and JavaScript based client-side “MVW” frameworks like AngularJS, Backbone.js, etc in addition to being able to develop backend services with Spring/Java to provide business logic and data. So, when you are in a dilemma to choose from multiple job offers,look beyond salary.

#4. Keep expanding your non-technical skill sets

Have separate well targeted resumes to market yourself not only as a techie, but also as a semi techie with business focus or a semi-techie with a process improvement focus. For example, as a change agent or a facilitator who bridges the gap between techies and the business, agile coach, scrum master, etc. I have seen developers becoming agile coaches and scrum masters. So, focus not only on your technical skills, but also on business and soft skills. At the end of the day the business value you add is what keeps you employed. So, resist your temptation to acquire your third tech certification in favor of much needed soft (e.g. communication, leadership, etc) or business skills. When agile testers are prepared to assist with automation by writing Java code via BDD (Behavior Driven Development), developers need to have more business focus not only to go places, but also to survive layoffs and to generate multiple income streams as discussed in tip #6.

#5. Changing jobs with the view of gaining additional skills

Feeling stagnated, and have not gained any new technical or non-technical skills in the last 12 months? If you’re thinking of changing employers, then focus more what new skills you can acquire as opposed to how much more you can earn. Pick companies that have a strong professional-development policy. There are a number of product based companies that have stringent standards on hiring and retaining the best. They have a very rigorous screening process including phone interviews, written tests on algorithms & data structures, code quality quiz/test, and team fit.

#6. Generating multiple income streams ….

Not only the jobs, but also the salaries & contract rates are under downwards pressure as well. The mode of payment for the contractors has gone from hourly to daily fixed rate, and now a days to yearly fixed salary. Explore other part-time passive income generation ideas. Learn more at What can you do as a Java (or any) programmer to create your own brand, and earn a solid active & passive income?

#7. Getting through the multi-stage interview processes

to join an elite team. It is the survival of the fittest. More and more organizations are conducting pre-interview online technical tests, coding tests, and coding home assignments to hire the right candidates. Stringent screening process is a must for

1) Mission critical projects.
2) Low latency applications.
3) BigData Ingestion & Analytics.
4) People oriented multi-nationals, software-houses & startups building leading edge products & services.

These employers not only go the extra mile in setting up online technical tests & home assignments to hire the best prepared, but also prepared to wait for the right candidates to come along.

#8. Good resume writing, branding, and networking skills

to present yourself in a better light than your competition. A quality resume can go a long way in getting shortlisted to the next stage of telephone screening, sitting for a technical/coding test or a face to face interview. Most resumes make your prospective employers go blah blah instead of wow wow.

Branding yourself can make prospective employers and recruitment agencies approach you via LinkedIn.com and emails.

Networking can increase your chances of securing work via less tapped into channels. Most people only respond to widely advertised positions via the popular job portals. This is a highly competitive channel.


In short, channel the “negative” energies like complaining, feeling insecure, ranting, etc to more positive avenues discussed above in a proactive manner to improve your chances of survival. At times we all needed to be pushed to make the much needed changes, and for some of you, off-shoring can be a blessing in disguise to lift your skills a few notches to go places.


The following two tabs change content below.
Arulkumaran Kumaraswamipillai
Mechanical Engineer to freelance Java developer within 3 years. Freelancing since 2003 for the major banks, telecoms, retail & government organizations. Attended 150+ Java job interviews, and most often got 3-6 job offers to choose from. Published Java/JEE books via Amazon.com in 2005, and sold 35K+ copies. Books are outdated and replaced with this online Java training. Join my LinkedIn group. 1,350+ paid memberships.

By topics – 800+ Q&As ♥ Free ♦ FAQ

open all | close all

Java 200+ FAQs – Quick Brushup

open all | close all

100+ Java Tutorials step by step

open all | close all

13+ Tech Key Areas to standout

open all | close all

Java coding exercises

open all | close all