![ExitingPerson.jpg]()
There are a lot of .NET programming jobs around in the world, some good, 
some...not so good.  How do you know when it's time to leave a job in pursuit of 
another?  Before we address this dilemma, let's discuss a few of the corporate 
myths that keep you working in the same dead-end programming jobs. 
1)  Company Loyalty - At one time, company loyalty counted 
for something, but no more.  The reason you don't owe your company anything is 
because your job could disappear tomorrow.  Economic conditions, company 
earnings, and consumer demand can all have a direct effect on your job.  It 
doesn't matter if the company is big or small.  Large corporations will do 
massive cuts to improve share prices for their stock holders.  Small companies 
will cut positions to reduce fixed costs and to keep their company afloat.  
Perhaps the only exception to this is a tenured government job.  Remember, a 
company's primary motive is not to increase your happiness, but to increase 
profits. 
As an example, this news article about Dell Computer Systems was just 
released:
(DALLAS) Dell Inc. said Thursday that earnings rose 8 percent in preliminary 
first-quarter results, but the computer maker planned to lay off about 8,000 
employees over the next year as part of an ongoing restructuring. 
So 
even when earnings appear good, the company may still see firing you a way to 
improve its bottom line.
2)   I Just Had a Good Day - We often rationalize staying in 
a job we dislike because of an occasional good day that keeps us engaged and 
hopeful.  "I just fixed that bug in the system so now things will get easier".  
Just remember all the days before thatâ€"the overtime, the headaches, conflicts 
with the boss or other colleagues, spinning your wheels. Keeping things in 
perspective will give you the conviction to jump ship. 
3)  Lunches are Free - There really is no such thing as a 
free lunch. A company that supplies free food and other consumable perks is 
trying to keep you on the premises 24/7.  They are getting more hourly work out 
of you at the small expense of supplying a $5 lunch.  Imagine if you went home 
for your meals every day.  That would cost the company a great deal more by 
losing your precious time at the keyboard.
4) My Colleagues are Great - This is a tough one to argue.  
If you really enjoy the people you work with and your boss is not an ass, then 
it is harder to leave.  But if the work doesn't suit you, you should consider 
exploring other options. 
5) Big Benefits - Most jobs have benefits, so if it's just 
the benefits that are keeping you, then at least explore programming jobs with 
comparable benefits.  Some will have a great health plan and another might 
support educational or professional advancement.   When weighing benefits, you 
should way the costs.  Perhaps a better salary at a new job will make up for the 
great benefits you are currently getting. Some benefits such as 401K plans are 
transferable to your new job. 
6)  I'm Important Here - If you need the job to boost your 
ego at the expense of hating your work, then something is wrong.  If you have 
great skills and experience then people will find you important elsewhere. 
7) The Company Cannot Replace Me  - Hah!! Don't think for an 
instant that your company can't find someone to take your place.  The new guy 
may not be as good as you, he may not understand the system as well as you, he 
may never fill your shoes, but he will replace you.  The very definition of a 
company is an entity that does not depend on a specific individual to survive. 
8)  I Won't be Able to Find a Job Elsewhere - We are talking 
about .NET skills here, not COBOL programming.  And even COBOL  programmers 
manage to find jobs, so consider all those antiquated systems that need 
support.  To convince yourself that this is a myth, go on a few interviews while 
you're still working.  There is never harm in interviewing.  An interview 
doesn't have to be a scary life-or-death event.  It is a conversation between 
two technical people assessing each other.  Generally, if the person is 
technical, you'll find that you have a lot in common anyway.  Interviewing can 
cure your job-security anxiety. 
9) I'm Older  - You're more experienced.
10) I Have too Little Experience - This is a tougher one to 
argue.  If we are newer to a programming language that companies want, we need 
to show experience.  It is sometimes worthwhile to "tough it out" for six 
months. But then start interviewing.  Six months may equip you with enough 
experience to land another programming job given the current demand for .NET 
programmers. 
11)  I'll Probably take a Pay Cut - You won't know until you 
start to interview.  However, sometimes a reduction in pay is a small price to 
pay to free yourself from a programming job that isn't right for you.  The money 
becomes less important if you love the work. 
12) I Think I can Finally Convince the Boss to give me a 
Raise - Do you want to know the only guaranteed way to get a raise in 
your current job?  Find a job at another company that will pay you more.  The 
best time to negotiate your salary is when you land a job with a higher salary.  
Then, you can either leave your current job, or let your boss know that you have 
been offered a job with better pay.  If you believe that you are irreplaceable,  
this is the real test.  If you don't like the job, though, a raise isn't going 
to make you happy.
Conclusion
In this article, the first in a series, we debunked the myths and 
rationalizations that keep us in dead-end programming jobs.  Feel free to use 
the list above to determine if you are "stuck" in your current job.  The next 
article will explore reasons to flee from your current position and how to go 
about it.