Jump to content

  • Log In with Google      Sign In   
  • Create Account

Wrong career move?


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
28 replies to this topic

#1 NotMyRealName   Members   -  Reputation: 100

Posted 11 January 2011 - 08:56 PM

So, it's time to put your careers guru hats on.

I've been working as a professional developer in one form or another for about 12 years now. The first 8 or 9 mostly in C++ and the last few in C#/.net. My last few roles were as a "senior developer".

At the end of last year, I was offered a role as a technical lead. The idea was that I would have the main responsibility in a small company and have more opportunity to make the bigger decisions. The company was redeveloping their legacy MFC app in .net.

My last company, while sometimes frustrating, was a good work environment and I got on well with most of my workmates, so I was reluctant to leave, but it was a pretty decent payrise and more importantly, more responsibility/autonomy. So I took the new job.

I've been here 3 days now and I can't help but feel I've made a huge mistake. The work environment is awful, the existing codebase is worse than anything I've seen and I don't see any of the "technical lead"y stuff happening in the near future at all. In short, i now dread getting up each day.

Do I "tough it out" and hope it gets better? (yes, I'm aware I haven't given it much time, but I've hd enough jobs to get the feel of a place). Or do I cut my losses now and just quit (there are other potential roles I could look at)?

Thoughts?

Sponsor:

#2 Nytegard   Members   -  Reputation: 823

Posted 11 January 2011 - 09:23 PM

I was in a simlar position to you several years ago. I was at a job witha work environment I liked, got along well with the people there. The pay wasn't that great, and the location wasn't that great, and I ended up taking a job that offered over twice my previous salary, and offered to advance my position. I'll say this. Never again will I take a job based purely on money.

Use the interview to your advantage. Remember, it's not just them interviewing you; you're also interviewing the company. I had several bad vibrations from the interview, but I ignored them. I started the job, and thought, well, I'll though it out. Toughing it out did not work. I thought, well, I'll give it 2 years to be fair. The job went from bad to worse. My mood became horrible. I was angry all the time. My nice salary I found was being spent on just trying to keep me sane. I hated the job and didn't want to be there.

Now, you'll say, why not change jobs? I'm not completely sure about whether or not it's a good thing to change jobs immediately, and how bad it reflects upon you, but it's much easier to change jobs sooner rather than later. Trust me, when you hate your job and are in a state of depression, you do not notice how you reflect upon others. Even when interviewing, you'll be more negative, and companies will be less willing to hire you because of your attitude, even though you think you did fine. I was probably the most negative person at my last job, and after a year removal from it, I've talked to a few old colleague's, people who I thought were all happy-go-lucky, and from my removal, I kind of noticed that they honestly were kind of depressing also. It was just that I was so upset, that in comparison, they appeared to be happy. If you're not happy where you are, the longer you wait, the harder it's going to be to get a new job. At the very least, I would try finding a different division to work under to try to peacefully resolve your issues.

#3 hiigara   Members   -  Reputation: 108

Posted 11 January 2011 - 09:26 PM

So, it's time to put your careers guru hats on.

I've been working as a professional developer in one form or another for about 12 years now. The first 8 or 9 mostly in C++ and the last few in C#/.net. My last few roles were as a "senior developer".

At the end of last year, I was offered a role as a technical lead. The idea was that I would have the main responsibility in a small company and have more opportunity to make the bigger decisions. The company was redeveloping their legacy MFC app in .net.

My last company, while sometimes frustrating, was a good work environment and I got on well with most of my workmates, so I was reluctant to leave, but it was a pretty decent payrise and more importantly, more responsibility/autonomy. So I took the new job.

I've been here 3 days now and I can't help but feel I've made a huge mistake. The work environment is awful, the existing codebase is worse than anything I've seen and I don't see any of the "technical lead"y stuff happening in the near future at all. In short, i now dread getting up each day.

Do I "tough it out" and hope it gets better? (yes, I'm aware I haven't given it much time, but I've hd enough jobs to get the feel of a place). Or do I cut my losses now and just quit (there are other potential roles I could look at)?

Thoughts?


The existing codebase is bad, that's probably why they need you the most. Stay and leave your mark by improving their codebase. If they don't allow you enough room and autonomy to make the changes you would like to see, then let them know that you are unhappy.

#4 leiavoia   Members   -  Reputation: 960

Posted 11 January 2011 - 11:32 PM

The existing codebase is bad, that's probably why they need you the most. Stay and leave your mark by improving their codebase. If they don't allow you enough room and autonomy to make the changes you would like to see, then let them know that you are unhappy.

I was in a similar situation and i did improved the... well, no, i completely scrapped the old code and started over from scratch. The old code was TheDailyWTF worthy. The new code was much much better. Doing everything from scratch was hard, but...

Anything I do now makes me look awesome compared to the last guy!


If you don't have the authority to make the code shine, then yes, i fully support you looking for other work. Better to work at a gas station and be happy than hate every day of your life.

#5 Sirisian   Crossbones+   -  Reputation: 1793

Posted 11 January 2011 - 11:41 PM

I don't have much real world experience, but I've worked at a university for 3.5 years with the freedom to scrap and start any project from scratch. If your company can afford it then it's an amazing feeling. I redid all of the university printing servers and software documenting everything from the very beginning and I haven't touched things really in like a year and a half.

It sounds like they hired you thinking you could improve things.

Do I "tough it out" and hope it gets better?

As the technical lead can't you make it better?

#6 frob   Moderators   -  Reputation: 22796

Posted 12 January 2011 - 01:12 AM

On the bad code situation, it is usually your own (collective) fault:

You MUST allocate time in every task to clean up afterward. You must also allocate time for "spring cleaning" as your code base grows over the years.


It is like living in a house but never taking out the trash. Moving to a new house will not solve the problem, you'll just accumulate trash at the new one.

Or never cleaning up your desk. It makes your workplace gradually become more unusable, then unbearable, until ultimately your boss demands change.

You cannot work in a machine shop and never sweep up or clean up the scraps, splinters, and dust. (Well, you can, but then you've got a fire hazard and will be shut down.)

You cannot perform surgery without taking out the sponges and sewing the patient back together.


Okay, enough with the analogues. It doesn't matter how many times the code is rewritten from scratch, if you don't learn to clean up your code as you go you will always end up with a mess.





As for the job, sounds like it is time for soul searching. I recommend hitting the Appendix in the book "What Color Is Your Parachute?" to help with the soul searching. Once you are sure what direction you want to go, then you can use a simple decision grid to help make the choice.

Bad economy cycles are an interesting time to change jobs. Once you actually know what you want, and assuming you believe you could get that job elsewhere, you should consider talking to your current employer. You stuck with them as times have been difficult, now see how willing they are to work with you. A soft touch and gentle persuasion (not the "do it or I leave" attitude) might give you the best of both worlds. You might end up at the same company but working on new growth that the company has been wanting to explore, possibly with a compensation change or a promotion or other benefits. Or it might just give more ammunition to the move. In any event, you will be better off for it.

Check out my book, Game Development with Unity, aimed at beginners who want to build fun games fast.

Also check out my personal website at bryanwagstaff.com, where I write about assorted stuff.


#7 NotMyRealName   Members   -  Reputation: 100

Posted 12 January 2011 - 02:32 AM

Thanks for all the replies. To take them in reverse order, Frob, it's really not my fault. I just started and I had nothing to do with this code.

Sirisian, this is part of the problem. I'm supposed to have that kind of authority, but it's been made pretty clear to me that I won't

leiavoia, tempting as it would be to start over. It would be the wrong thing to do. It is a very substantial application and I don't have the resources to scrap it and start over.

#8 SigmaX   Members   -  Reputation: 317

Posted 12 January 2011 - 07:58 AM

3 Days is definitely way too early to call it quits. If your dreading going to work every day (only 3 morning so far) then you have to look a bit harder as to what you can gain from working there.

If you don't see the technical lead responsibilities coming any time soon, then start looking for your own project to help the company out. Coming up with new ideas and presenting them to others, even if the get rejected, is great way to show your value to the team. In a previous position I had I came up with a concept for a new internal tool. I worked on it on my down time and now it has become very useful to the company.

Perhaps you could explain why you feel you won't be getting the responsibilities you thought you were going to? Who is making the decisions you should be making? Is there any way to assert yourself into those decisions?
-)------ Ed

#9 Oluseyi   Staff Emeritus   -  Reputation: 1678

Posted 12 January 2011 - 10:14 AM

Sirisian, this is part of the problem. I'm supposed to have that kind of authority, but it's been made pretty clear to me that I won't

Then leave. They misrepresented the position, and you're not interested in a lateral move to an inferior organization - feel free to tell them so in plain terms. Advertise that you will begin seeking alternate employment from an organization that means what they say in their ads. Also look into whether you can return to your old job.

#10 Tachikoma   Members   -  Reputation: 552

Posted 12 January 2011 - 10:24 AM

Also look into whether you can return to your old job.

That's an interesting suggestion. I do wonder though, has anyone here ever managed to pull that off?
Latest project: Sideways Racing on the iPad

#11 kseh   Crossbones+   -  Reputation: 2205

Posted 12 January 2011 - 10:31 AM

On the one hand, there's something to be said for instincts but on the other, three days seems a pretty short time to have an informed opinion about the job. If you're the technical lead, have you tried to take the lead or are you waiting for someone to hand you the reigns? Before you be direct to them about wanting to leave maybe be direct with them about what you're supposed to be doing there.

#12 d000hg   Members   -  Reputation: 828

Posted 12 January 2011 - 11:43 AM

The existing codebase is bad, that's probably why they need you the most. Stay and leave your mark by improving their codebase. If they don't allow you enough room and autonomy to make the changes you would like to see, then let them know that you are unhappy.

Indeed. If you're hired as a lead, part OF your job is TAKING charge, not waiting to be given authority. Start acting like a lead. If explicitly told not to, ask why they hired you (if you're considering leaving anyway).


I was in a similar situation and i did improved the... well, no, i completely scrapped the old code and started over from scratch. The old code was TheDailyWTF worthy. The new code was much much better. Doing everything from scratch was hard

I don't have much real world experience, but I've worked at a university for 3.5 years with the freedom to scrap and start any project from scratch. If your company can afford it then it's an amazing feeling. I redid all of the university printing servers and software documenting everything from the very beginning and I haven't touched things really in like a year and a half.


Eeew, doing from scratch is a horrible plan. Then the next guy comes along and doesn't like your code, and decides to rewrite from scratch... meanwhile your competitors have shipped 2 new versions of their software based on "terrible" code and you are losing business.




#13 d000hg   Members   -  Reputation: 828

Posted 12 January 2011 - 11:44 AM


Also look into whether you can return to your old job.

That's an interesting suggestion. I do wonder though, has anyone here ever managed to pull that off?

I've had the option to, and I know people who have done it.

#14 stonemetal   Members   -  Reputation: 288

Posted 12 January 2011 - 12:04 PM

That's an interesting suggestion. I do wonder though, has anyone here ever managed to pull that off?


Happens all the time. I worked at a place that hired someone who quit before their first day of work and went back to their old job.

#15 frob   Moderators   -  Reputation: 22796

Posted 12 January 2011 - 12:08 PM


Also look into whether you can return to your old job.

That's an interesting suggestion. I do wonder though, has anyone here ever managed to pull that off?

Yes, I've seen it several times. I've never seen an immediate boomerang work in a professional work environment. It is different for those who return after an extended period rather than immediate boomerang.

You will be known as a flight risk at your returned job. After all, you left once. Regardless of the morality of the situation, you will be treated differently. Depending on the reasons for your return, you might be treated as a newfound slave since you refuse to leave, or you might be treated as a pariah or outcast.

Leaving a company, even if you left on good terms, has a big cost financially and emotionally. Even if on the surface you are welcomed back, your leaving will have caused a substantial rift. It may be better to wait a year or more before returning.




The existing codebase is bad, that's probably why they need you the most. Stay and leave your mark by improving their codebase. If they don't allow you enough room and autonomy to make the changes you would like to see, then let them know that you are unhappy.

Indeed. If you're hired as a lead, part OF your job is TAKING charge, not waiting to be given authority. Start acting like a lead. If explicitly told not to, ask why they hired you (if you're considering leaving anyway).

Simply put, are you a leader or not?

Control is a myth. You can never be given control because that just isn't possible. You can be given authority, but that is not leading. When you start leading you inherently pick up both authority and the illusion of control. How you manage those perceptions is an important part of if you will succeed as a leader or not.

It is you who must become the leader. It is not conferred as part of a job title.

Check out my book, Game Development with Unity, aimed at beginners who want to build fun games fast.

Also check out my personal website at bryanwagstaff.com, where I write about assorted stuff.


#16 NotMyRealName   Members   -  Reputation: 100

Posted 12 January 2011 - 01:59 PM

Sorry, but in reality you cannot simply aasume control of a work environment straight away. First off, its a very small company, the only other people there have been there from the beginning and are the domain (if not technical) experts.

Oluseyi, I had considered going back to my old job, but as others have said, I'm not sure that'd be a good move. They now know I want something they can't provide.

#17 NotMyRealName   Members   -  Reputation: 100

Posted 12 January 2011 - 02:03 PM

And for the record, part of the reason I got this job is because I have a track record of taking control when needed. However, that requires management who are receptive to good ideas. Not sure if that will happen here.

#18 way2lazy2care   Members   -  Reputation: 782

Posted 12 January 2011 - 02:18 PM


The existing codebase is bad, that's probably why they need you the most. Stay and leave your mark by improving their codebase. If they don't allow you enough room and autonomy to make the changes you would like to see, then let them know that you are unhappy.

I was in a similar situation and i did improved the... well, no, i completely scrapped the old code and started over from scratch. The old code was TheDailyWTF worthy. The new code was much much better. Doing everything from scratch was hard, but...

Anything I do now makes me look awesome compared to the last guy!


If you don't have the authority to make the code shine, then yes, i fully support you looking for other work. Better to work at a gas station and be happy than hate every day of your life.


I'd +1 this if I could. If you have the authority and you aren't a code monkey anymore you should be able to really make an impact, which could be great for you. Try to make the changes you want to see there. If they don't let you make those changes, THEN I'd say start looking around.


Also look into whether you can return to your old job.

That's an interesting suggestion. I do wonder though, has anyone here ever managed to pull that off?

I haven't, but I feel like as long as you left on good terms, they were aware of why you left, and they haven't filled the position you should be fine.

Also you shouldn't have done this:


#19 stupid_programmer   Members   -  Reputation: 1241

Posted 12 January 2011 - 02:33 PM

Sorry, but in reality you cannot simply aasume control of a work environment straight away. First off, its a very small company, the only other people there have been there from the beginning and are the domain (if not technical) experts.

Oluseyi, I had considered going back to my old job, but as others have said, I'm not sure that'd be a good move. They now know I want something they can't provide.


They hired you for a management position though. If you can't take the bull by the horns your first day you should probably make way for somebody that can. Those "experts" are always going to be experts, if you are scared to delegate them now then that won't change six months from now.

#20 frob   Moderators   -  Reputation: 22796

Posted 12 January 2011 - 02:38 PM

Sorry, but in reality you cannot simply aasume control of a work environment straight away. First off, its a very small company, the only other people there have been there from the beginning and are the domain (if not technical) experts.

Correct. Trust is earned and becoming the go-to guy is gained over time.

And for the record, part of the reason I got this job is because I have a track record of taking control when needed. However, that requires management who are receptive to good ideas. Not sure if that will happen here.

Getting hired into a lead capacity is risky that way. My short list:
* You must very rapidly gain trust.
* You must very rapidly become expert at something, and learn who the experts are for everything else.
* You must very rapidly establish your own leadership and sources of power. That leads to the illusion of control. Positional power (I'm the leader) is one of the weakest. You need to find and gain other sources. Probably the most easily available to you are informational power and resource powers. Probably the most useful when starting is the power of your own personal traits.
* You must very rapidly learn who can be trusted with your power, using it to take a leadership role rather than a micro-manager role. Leaders find ways to give away or delegate power, and when done correctly, delegating your power actually increases your own. Failure to give power to others reduces it. Giving it away improperly leads to unemployment. This is part of what makes leading so much fun.

What is your plan for those?

If you don't have a plan, there are many piles of excellent books on leadership, project management, and career building that can help. Visit your library and read up.

Check out my book, Game Development with Unity, aimed at beginners who want to build fun games fast.

Also check out my personal website at bryanwagstaff.com, where I write about assorted stuff.





Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS