I just got offered a new job. It looks like an excellent opportunity, pay increase from £30k to £37k with a bonus scheme and a better pension plan. They'd also train me into C# and the work would be far more technical, lots of low level stuff and alot of work with the windows 32 api. It would be challenging and a steep learning curve but I'm the sort of bloke who loves a challenge and loves learning new things. From the point of view of furthering my career it's a complete no brainer.

But I really like it where I am at the moment. I get on really well with the people and I actually look forward to coming in. Out of all the companies I've ever worked for, this one has been my favourite. The work is basic VB6 database development stuff and doesn't really challenge me (which is a bad thing... except on Mondays when it's welcome ) but if there's anything wild and wacky that needs doing it generally gets given to me so I do get the occasional challenge. My last three jobs were absolutely aweful (one of them was bad enough to see me getting treated for depression for the only time in my life) so I really value the fact that I'm happy here. It is a bit of a career doldrum though, small company with no opportunity to advance at all. I suspect they'll aproximately match (or close to match) the salary offer and there's talk of a big web project coming up for which they'll use ASP.net (which would also be a new technology for me) which they'd likely give me ownership of and train me up on but C# is a far more interesting prospect. I think I'd get along fine with the guys at the new company but I can't be sure from one interview (they did seem nice though).

So what do I do, stay where I'm happy but where I'll never really advance, or go where I'll probably happy (though probably not as happy) but be far more challenged and which will likely see me with a much bigger pay packet on 5 years time?