Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

I have heard several times from multiple people that "you shouldn't stay at the job you first arrived at as an intern before you got your BS degree". The thing I don't remember is: why not?

History: I have been at my current company for 2.5 years as an intern (got in during the last year of community college), I transferred to a four-year university and am finishing my degree in the next 6 months. I plan to look around for a new job after I graduate (at least to just get my interviewing feet wet), but wonder if I should strongly consider a job where I currently work.

Pros: I am familiar with the company, really love the people I work with, and am generally familiar with most software products we work on. Additionally, I have completed several projects there that I solely support (slightly better job security).

Cons: Academically and professionally, I have a strong interest in web development which is something my current company does not do (it focuses mostly on Java/C++ computer applications). Academically, the classes I specialized in were aimed at web development (HTML/SQL/n-tier server side development/PHP/JSP/JavaScript/...). Also, the projects I implemented were developed when I didn't know several of the development patterns that I know now. If I had to re-implement them, I probably would have made some greatly different implementation decisions than I originally threw together 2 years ago.

The Big Question: Professionally why shouldn't someone stay at their first job, especially since its pretty close to guaranteed job offer.

share|improve this question

closed as off-topic by gnat, MichaelT, ratchet freak, durron597, GlenH7 Apr 17 at 14:39

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions seeking career or education advice are off topic on Programmers. They are only meaningful to the asker and do not generate lasting value for the broader programming community. Furthermore, in most cases, any answer is going to be a subjective opinion that may not take into account all the nuances of a (your) particular circumstance." – gnat, MichaelT, ratchet freak, durron597, GlenH7
If this question can be reworded to fit the rules in the help center, please edit the question.

I guess to further what I was talking about, I have heard that people come to forever think of you as "that intern who wrote that piece of unpolished software", or "that intern who moved up to full developer", but cant really think of you as the person who started as a full (junior) developer in his own right. –  Brian Aug 18 '11 at 15:40
You will encounter that to some people, you will always be 'the intern.' That's just the way some people are. At the end of the day, though, let your work speak for itself and strive to better yourself to show those that you have the capacity to grow beyond your first job title. I'm sure those people who would think of you as the intern probably don't have the same job title that they started with at your company. –  Psycho Bob Aug 18 '11 at 18:06
Upvote because I am currently at an internship following up my 2 years at community college and will be starting at a 4-year school (for 2-years) in the fall. Our situations seem shockingly similar, and it intrigues me. –  Robbie Aug 18 '11 at 18:22
I've decided I'm going to start writing a blog about everything I'm doing and thinking about this whole interview process in the coming months (brianesserlieu.com). I really appreciate all of the feedback! –  Brian Aug 23 '11 at 7:09
@Robbie: I can't resist to remind you that upvoting is not meant to show sympathy but to reward well-posed questions. Something that seems to be forgotten here on programmers.SE way too often... –  blubb Aug 25 '11 at 16:09

13 Answers 13

up vote 26 down vote accepted

Should programmers stay at the internship they had before they graduated?

An anecdote:

Back in the day I was in the same boat as you. I was an intern on the Visual Basic team at Microsoft for a couple years as I was doing my degree. When I graduated the VB team gave me a job offer; they had already been "interviewing" me for over a year, and that gave them a lot more information than most candidates who they see for a single day of interviews.

My advice to you is to take the opportunity to interview around. Interview at different companies. If your company is large, interview on different teams in your company. You might find that there is a really good opportunity, and even if there isn't, interviewing well is a skill that takes practice.

When I graduated I interviewed at a number of different companies and teams at Microsoft, and either they no-hired me, or they gave me an offer but the VB job was better. So I took the VB job, and fifteen years later I'm still on the languages team and having a great time. And I know lots of other former interns who got hired on the teams they interned with here. I see nothing whatsoever wrong with that, but I also see nothing wrong with taking the opportunity to look around a little and see what's out there.

And finally: the job satisfaction from working with smart, motivated people who do great work that you can learn from and genuinely like as people is enormous. The fact that you already like your coworkers is big points in favour of staying with them. Lots of people are made miserable by their coworkers, even if the technical aspects of the job are awesome.

share|improve this answer
The fact that you already like your coworkers is big points in favour of staying with them. is one of the best points. –  StuperUser Aug 23 '11 at 10:11

The Big Answer: Do what you think is right, and gives you satisfaction.

There is NOTHING wrong in staying at your first job if that is what you want. If not (as you say they don't do web), moving on isn't bad either.

The cons that you outlined are your personal ones, and there is nothing general about them that can justify quitting first job after completing college. On the other hand, the pros are totally general and apply to everyone.

So the bottom line: listen to your heart.

share|improve this answer
Hey, that advice made me think of Roxette –  Spoike Aug 23 '11 at 10:57

Some factors are really important at work. The most important factor is that you should enjoy your work. If you like web development, then being employed as a game developer, or a UI designer, or a salesperson won't suit you. So, my recommendation regarding this factor is that, you find a job as a web developer.

However, people usually don't know what they really like, unless they work in that field for a while. As I see, you've been there for 2.5 years, which means that you've mature enough to decide whether you really don't like your current position or not. So, the formula is simple. You're the judge. You're the only one who can say if you like your current work? If you don't like it, then leave and find another place to become a web developer.

The reason for this factor is that, when you like your work, no matter how much trouble you encounter, you still improve and get the work done. You won't get tired and there are some aphorisms about this. The most famous one is from Confucius, who says:

"Choose a job you love, and you will never have to work a day in your life."

share|improve this answer
Thanks Saeed! And I love the quote, better than a job, I found a career that I love! –  Brian Aug 18 '11 at 5:39

I was in the same situation you're in, but this was 18 years ago. I did approach this from a different perspective though; I applied for an internship (is that the word? I'm not a native speaker) but consciously picked a company I liked, and wanted to use it to "get my foot in the door", so to speak.

What I did during that internship I liked, and I liked the environment and colleagues, plus, the salaries seemed to be fine after graduating.

I never regretted doing it (I'm still with that first company), but I might not have stayed if my internship had been a mediocre or even painful experience in some respects.

So, basically, if you're happy, stay. If not, look around for something else. I don't think there's anything wrong with that.

share|improve this answer

Professionally why shouldn't someone stay at their first job, especially since its pretty close to guaranteed job offer.

The issue people highlight isn't whether you should take the job, it's whether you should stay in it once it's taken.

An issue is that you will almost always be seen as a junior. To move your career forward people suggest to take a new job, so that you arrive fully skilled with n years experience and that is how people will see you, not as someone who used to be a gopher or on the phones.

I took the job for where I had worked for a year before university, and during summers. It was a great place to work, but quickly found that when I was ready for a move from Junior, I had to move to a new company.

It can also be difficult if pay for certain roles is not graded/uniformly, since you may be on a rate from your internship rather than a developer's rate.

share|improve this answer

If the pay is competitive, it is a good work culture, and you enjoy the work, then the devil you know is much better than the devil you don't know. With respect to your desire for web development, I would imagine that some project will come up eventually that will need to be done on the web and you will be a perfect candidate for a project lead. If you have already made social contacts there, and the bosses like you, then you are throwing away 2 years worth of work that you will have to do again somewhere else to get where you are today by leaving.

The question is, is the pay competitive, do you like the culture, and do you enjoy the work? If so, you have a great job that will be very hard to replace. Otherwise, take your chances in corporate America, but I'll tell you it often takes a few tries to find a good fit.

To appease your current interests, you could always join an open source project. That always looks good on a CV.

share|improve this answer

I believe it's a good idea to branch out, especially when you're young, but it does depend on what you're looking for in the future. Now I don't recommend job-hopping, but I believe that you learn a lot every time you switch jobs. Right now is your big chance to explore a lot of different stuff and get to know lots of smart people. Sticking with a single job, while comfortable, limits your learning and is best for later in your career after you've got an awesome foundation of knowledge. This isn't a hard-and-fast rule of course. If you work at a place like Google for 10 years you probably could learn an amazing amount of stuff, but most companies aren't Google.

You certainly can learn a lot on your own time outside your job, but you'll learn way faster if you work at a place that does web development, for example. The key is choosing the right companies (i.e. places with smart people and a culture that promotes change, etc). I think startup-ish and technology-driven companies are great places for young software developers to get started.

share|improve this answer

The fact that the technologies used by your current company aren't those that you have a passion for is a big sign you need to move on.

Your situation sounds very similar to mine about eight years ago. I'm in the UK, so it was called a sponsorship, but was basically the same as being an intern.

I was working at a large global IT company whilst also completing my BSc Computer Science degree. When they took me on, although I had solid programming experience, I didn't really have one particular area which I was keen on, so they made the decision for me and within a few months I was working in a role as a Lotus Domino Developer (yes, I know ...!)

I wrote quite a few applications for the corporate functions of the business and some of them were huge successes, others were held back by limitations in the technology. However a lot of users perceived that I was responsible for the failings due to my junior status.

I made the mistake of continuing to work there following my graduation - for a further three years. I did it because it was so easy to simply accept a job offer and I liked the culture there. As time progressed though, my frustrations with the technologies I was limited to grew and I wanted to leave.

I quit, went away travelling for a year and on my return, found myself a new job at a small software house. They trained me up in ASP.NET, C# and SQL and it was the best career decision I have ever made. I only wish I had done it straight after graduation and taken a junior role at a new company. I would have probably got a lower salary, but I would have enjoyed it far more.

share|improve this answer

I see no problem with staying in a job that you enjoy. Staying with one company for 40 years used to be very common, and it still happens.

In this case it sounds like what you are really asking is permission to leave your comfy nest doing work that isn't really want you want for the unknown shore doing the web work that really interests you.

At your stage of the game I'd start looking for a web development job. Do some networking, ask around. Life is too short to spend it wishing you were somewhere else.

share|improve this answer

Seriously consider this but don't just grab. Consider these:

  • Salary. This can be a showstopper even for a very satisfying job.
  • Responsibility creep. The demands may rise. A leisurely pleasant work may become tiring.
  • Changes. I loved the corporation I was employed with. A year later I seriously disliked it. It went through turbulent changes and discarded most of what was good about it. So look out for that.
  • Self-development. You don't need web-related job right now. You need a web-related occupation. This can be done as a hobby. You need time for a hobby.

But above all, if the salary is good, take it for the good atmosphere. Work atmosphere is not something you can learn from ads or interviews. So, yes, consider it seriously.

share|improve this answer
Responsibility creep? Do you mean inside the job or outside (starting a family)? If I could have split the bounty, I would have gone half with your points. They were very good to keep in mind as well. –  Brian Aug 29 '11 at 15:36
@Brian: Inside the job. As an intern you aren't given any very responsible (=very hard) tasks. You aren't heavily engaged in any heavyweight, urgent projects where they couldn't afford a crew member suddenly leaving - as interns are prone to. Your employment becomes more costly, so they may want your workload rise to follow your salary rise. –  SF. Aug 30 '11 at 8:13
SF thanks very much for explaining, I understand what you mean. I have done tons of non-mission-critical things around my internship right now, but do not do lots of in-depth work on any critical products. –  Brian Aug 30 '11 at 20:59

Professionally why shouldn't someone stay at their first job, especially since its pretty close to guaranteed job offer.

Generally speaking, there are no clear advantages or disadvantages to your long-term professional career to taking a job at the same place you did your internship.

It all depends on your personal situation, and the job itself. I could tell you what I would do in your situation, but I don't see how that can be helpful. You have to make up your own mind; i.e. decide what is more important to you.

share|improve this answer

There are few very good reasons to go back to the company that gave you the internship:

  • It looks very good on the CV, as it proves they liked you.
  • You don’t need to spend time thinking about and finding a job when you are meant to be studying.
  • The grass is not always greener on the other side
  • And most importantly you don’t have to stay there, very few people will count it against you if you started investing other options, most companies will let you join the gradate recruitment scheme the year after you gradated.

There are a few reasons not to take it:

  • You hate the job, company or people.
  • The location does not work for you, and you wish to settle down elsewhere.
share|improve this answer

The reasons are:

  1. You're young,

  2. It's your first job,

  3. It could be horrible and you would have no clue,

  4. You wouldn't have had the opportunity of negotiating your contract,

  5. You will live your whole life in terror of losing this one job,
    (having never really mastered the art of getting another one)

  6. Never having experienced the timing and subtleties of changing jobs, after realizing all of your colleagues are leaving, because of am imminent folding, you will time your eventual departure from the company very poorly.

...its just like marriage.

Some marry young and prosper all of their life with their high school crush.

But then, it's an ever shrinking minority.
How about a little dating period first: let's see other companies.

share|improve this answer
Please note the other side of this: people who sit and "time" when they should leave their job, and do constant "job hopping" will get CVs that all good employers get the shivers from. Instead of staying at a good job, you may end up jumping around between poor ones, because your job-hopper CV will block your chances of even getting interviews at the good companies. –  user29079 Aug 26 '11 at 9:47
Haha, thanks ZJR. There really are a lot of parallels that you can draw between keeping/leaving a job, and staying with someone or moving on to greener pastures. I've never had much problems finding jobs, but then again I've never yet really had to look for ones that required a degree. Good points too Lundin. –  Brian Aug 29 '11 at 15:35

Not the answer you're looking for? Browse other questions tagged or ask your own question.