MegaSack DRAW - This year's winner is user - rgwb
We will be in touch
Having a bit of a mid life crisis and wonder whether people can share experiences of the job.
Yes I enjoy it. Keeps my brain working but doesn't do much for my middle age spread.
Very difficult career to get into later in life unless you have experience or are prepared to start at a really junior level
You need to be able to sit and work on the same problem for hours or even days on end. If you have the attention span of a goldfish, forget it
Unfortunately considered a fairly low value skill these days, regardless of the fact that there is a huge gulf between good and not so good. Most of ours has now moved to China.
Yes if you get really good at it and either get into niche stuff or architecture, lots of money to be made then. If you're just an average programmer in a commonly-used language then there's a few hundred million people in India doing the same for £5k a year.
Whatever you do don't get into software testing, all the testers around me hate their jobs (mind you I hate mine at the moment and I'm in IT infrastructure not software...).
wot he sed.
Like most careers, unless you have a solid background in a closely related field it's going to mean starting at the bottom and competing with recent graduates with relevant skills.
You'd need to prove that you had a specific skill and some sort of portfolio of work to show prospective employers.
I have taken mature trainee developers on in a previous role but they all had good evidence of either some previous development involvement or a portfolio of personal work to show me.
If you enjoy problem solving and puzzles then it's a great job, imo.
[edit]
[i]If you're just an average programmer in a commonly-used language then there's a few hundred million people in India doing the same for £5k a year.[/i]
I couldn't disagree more, tbh.
All companies need 'average' programmers who are prepared to work on the less glamorous/technically demanding stuff. People who will turn up every day and get through a stream of work.
I've met very few companies who have had a positive experience with outsourcing work to India or wherever. The vast majority find they spend more money managing the process and dealing with issues than they saved by not going 'local'. If you have a *very* well defined piece of specific development and the infrastructure to manage remote teams successfully then it can work but it's not how most companies work (even big ones) - they all tend to rely on having local teams of developers who can respond quickly to changes in requirement and who understand the business they are working in or for.
I work as a graphic designer and want to get away from a screen.
Not software development in the slightest (other than UX / UI stuff and web coding), but still stuck behind a PC.
I'm in Oracle Apps development - more and more dev is being done by Indians, we have a huge group of them there. I'm a team lead which hopefully will keep me employed as need someone from the tech team on-site.
Whatever you do don't get into software testing, all the testers around me hate their jobs
I am a tester and don't hate my job.I however do mainly automation work which is about as interesting as testing gets.
It's probably easier to get into for a career change as well.
There is also a lot of testing work going to India as well. Go to any of the testing forums and most of the contributors are based in Hydrabad
I enjoy it, although the area is pretty huge so there are some development jobs I really wouldn't enjoy. More dev may be outsourced overseas but I've not noticed any shortage of jobs, plenty of companies are still hiring here (I'm Oxford based so basing that on here and London, can't speak to other areas).
There are some niche s/w jobs that can be quite fun. I've just finished writing embedded code for a certain hybrid supercar. The testing more fun too.......... 😉
It can be good, it can be awful. You need to position yourself away from the off-shore body shops if you can. This means working for a small company or a startup where you get to work closely with the business and you're responsible for a lot of stuff. However to do this successfully you have to be good and know a lot. You really need to be a pure-bred geek and take a real interest in everything.
It's the path to the dream; IT Middle management, get involved 😉
Technical testing is an option, especially if you enjoying breaking stuff just for the fun of it.
Software development is something I believe people are either skilled at naturally or aren't, I work with a mix of both. For reference, I wouldn't pitch myself as a massively skilled developer, I don't go home and code for 'fun' - but some people do.
@wwaswas - I guess the size of the company is important to, an SME with 50 people and 5 devs is unlikely to be off-shoring much as the hassle probably isn't worth it. Whereas the company I work for has 5000 employees in India (I'd guess at least 75% in dev or testing roles), we off-shore pretty much everything routine now unless there's requirements to keep it in the UK (government or secure stuff). I agree the quality varies a lot and I regularly hear both criticism and praise from the senior devs/architects around me but it's definitely improving - ofc them being part of the same company helps rather than just choosing some random off-shore operation selling blocks of dev hours.
Most of us software developers are having mid-life crises and wanting to do anything but.
Maybe you're right FuzzyWuzzy - a multinational with it's own employees in a cheaper location for development is a different kettle of fish.
I do know of a number of people who are looking to Eastern Europe for dev staff now - Bulgaria etc. It's probably not that much more expensive than India but you can do a trip for a day or two to deal with stuff and there's free movement of staff to the UK for meetings or critical phases of a project etc.
As an aside, in Brighton the 'tech economy' is now worth £715million - which is pretty much level with travel and tourism as an earner for the city. So there's plenty of money around to pay for local IT resources but I would agree that very good programmers are born, not made.
In Cambridge you see Indians recruited to work here (as well as out sourcing). There is a acute shortage of programmers in the UK. The business park I'm on seems like an Indian Campus some times....
When I recruited a junior tester in January, most of the applicants were Indian's on visas. I don't think I saw one CV from a UK graduate.
good: money, keeps your brain busy, can be on stw all day (I'm waiting for a build honest)
bad: ever present outsourcing threat, idiotic management (see dilbert for more information)
I think its a pretty hard job to get into later in life, but not impossible. If you are coming from a position where you have never even had a play at writing software it might be quite a hill to clime. If however you have done some programming as a kid or for fun and you need to learn how to do it in a more professional way you might be OK.
However if your good (or people think your good) there is very good money to be made.
Yeah a lot of stuff is out sourced, but a lot of the time this is done along side a UK team.
Its is a very wide discipline though these days from Cloud Application programming to Embedded and everything in between.
aracer - Member
Most of us software developers are having mid-life crises and wanting to do anything but.
hear hear, although this can be said of most IT professionals I work with.
If you have a real interest in it then go for it, build a portfolio etc. and good luck.
yes, you are going to have to teach yourself and develop something decent I think to have something to show in your portfolio, as otherwise you are a bit of a risk to take on as a trainee.
And not everyone 'takes' to programming - being academically smart has little to do with it in many cases - so you should try it. As there can be a large element of 'creation' to it it can be addictive and a good career choice.
And it seems to be buzzword bingo on cvs more than it used to be - if you don't have all the right acronyms then you don't get much of a look in.
And obviously age is a factor - we just took on a 58 year old who has been out for a couple of years with cancer/chemo and a lot of agents just wouldn't look at him, even though he is a member of mensa and his cv is chock full of senior level stuff like pricing models, etc.
Most of us software developers are having mid-life crises and wanting to do anything but.
not because of the programming though IME, it is because of all the rest of the bull, like politics, etc.
I know several that program to varying degrees even though they are not in the industry.
Some interesting replies, thanks a lot. Possibly exaggerated my age in the initial post - I'm 28 so possibly not middle aged. I am having a crisis though.
Just some background - I'm a CS graduate, currently doing a PhD but I don't think I can continue with it (See my previous post about hating my PhD - it hasn't improved). I don't enjoy academia, or really even being around the department. I'm slowly going insane and losing my ability to socialise and interact with the general population.
I'd like to develop more practical skills. Always liked coding when doing my undergrad, and would like to become a "Professional", that is work at a decent company and learn decent practises.
I was really just gauging whether people in the job actually like it in the long term (I've only ever worked on fairly small projects and for short periods of time).
Any things I should particularly look out for in a company?
I would expect you'd more variety in a smaller company eg a start up, but then you'd also get less support and be expected to figure stuff out for yourself. Personally I much prefer small companies...
What area is the PhD in?
If you're a grad with a PhD and programming skills you'll walk into a job at that age, I reckon. Your PhD might have a big impact. Maths Drs tend to be sought after for stuff like financial modelling etc.
Biggest problem in the industry is professional standards, imo. Because most managers and customers know absolutely nothing, they can't tell the difference between people good programmeers and bad ones. This means that you often end up having to live with stupid decisions and strategies from bosses.
If a building architect designs a building with the door on the first floor, a leaking roof and that falls down after 5 years of no-one using it, it'd be a scandal. The same happens in IT all the time and people seem to just shrug their shoulders and get the chequebook out again.
Most of us software developers are having mid-life crises and wanting to do anything but.
I thought a mid-life crisis was standard for most people (at least with office jobs)? And involves wild dreams of changing to a completely different job?
..for a first developer job I think a small company is best. You have the chance to get your hands dirty, dealing with the actual users and dealing first hand with any bugs you may have introduced. Certainly teaches you to test properly and that users rarely actually know what it is they really want. In this sort of job you usually have to start off finding errors/fixing bugs, not as interesting as real development but it's a good way of learning a new system and making you realise the importance of maintainable code.
Any things I should particularly look out for in a company?
At least here in Spain there's a big difference between consulting companies and in-house development teams: in the first case you'll be developing stuff for a different company, while in the second you develop software to be used (or sold) by the same company. There's more variety in consulting: today you're at one client, next month/year another. The downside is that you're always the outsider, and you probably have to work longer hours.
Edit: I'm talking about bigger organisations here.
The differences between pet projects and programming 'in the real world' are big. You don't get to decide what you make, and quite often you don't get to decide how it is made. You know all those little problems where sometimes it doesn't work correctly? Well you have to fix those. You have to be able to predict how long it's going to take you too.
I don't know how much longer your PhD is, but if only a couple of years or so, I'd wait and complete if I were you.
But apart from that:
I'm slowly going insane and losing my ability to socialise and interact with the general population.
Give it a bit longer and you'll fit right in
f a building architect designs a building with the door on the first floor, a leaking roof and that falls down after 5 years of no-one using it, it'd be a scandal. The same happens in IT all the time and people seem to just shrug their shoulders and get the chequebook out again.
so true 🙁
but it is still better than IT support/operations...
chambord: sounds like it would suit you well. Speaking as a PhD who has done both industry and now academic software development. You have (even if you quit the PhD) a very academic skillset not a technology oriented one. You need to find agents or directly find companies that value and will nurture your intellectual skills and capacity for learning new tech in the long term, rather than ones that seek candidates with a long stream of Java or AJAX buzzwords on their CV. You need the ones that will get you scribbling code on the whiteboard in the interview. These do exist but are in the minority. Quite a lot of them around Cambridge, though the mountain biking there isn't up to much! It's likely to mean a permanent role not contract work.
Good industry software development is IMO ahead of academia and I learned a lot from it. If you enjoy both learning and getting things done then it is a very deep and satisfying world to get into. Few academics work on projects with tens of thousands up to tens of millions of lines of code. PhDs on the other hand can be trying but do be sure before you quit, I nearly quit, but have since made academia work for me and glad of it.
have a look at the 'big data' and cloud stuff - with a PhD background you should find it pretty easy to understand
Cassandra rings, Hadoop, map-reduce stuff
there will be BIG demand for these over the normal application programming skills that are floating around for not much money. Plus its a big step towards architecture and how cloud applications can be built, supported
Most of us software developers are having mid-life crises and wanting to do anything but.
Sounds about right, hung my keyboard up after 9 1/2 years doing embedded software in C++ and assmebler, it was great doing the projects, but when they wanted to turn stuff to product it wasn't so good, stuck in an office day in day out was a massive change from being offshore on oil rigs.
Lots of people think software development is a great career to go into but much of this is based on history. Up until the late 90's it was a very well paid job with lots of career development and you could earn a fortune as a contractor. Then a couple of things happened, the government encouraged lots of people to go to university and study computer studies and many firms started outsourcing to India and the like. The indians then also started sending teams over to live in the UK to carry out out both project work and ongoing support. What both of these led to was a massive increase in people looking for jobs, so salaries went down. Coupled with this computers became a standard part of business and many senior mangers saw computers and software no differently than photocopiers and air-conditioning. They therefore refused to pay the high salaries.
So you now have the situation where large corporations mainly outsource software development to India or at least companies like IBM, HP, etc and just have small in house departments mainly dealing with implementations and running the project.
What is still healthy is all the small development houses doing really specialist work and moving the industry and technology on. However these companies generally do not pay a fortune as they do not have the funds. There is still a massive glut of trained people so unless you can really specialise in a technology then without any specific background it could be quite hard.
When I was a programmer I certainly enjoyed it as it was problem solving every day and you could really get your head into things. The killer was support as it got a tad depressing just fixing problems every day.
Would I recommended it, yes but only if you are really into tech and don't expect to earn a fortune.
Woody74 is bang on IMHO. 🙂
You need the ones that will get you scribbling code on the whiteboard in the interview. These do exist but are in the minority. Quite a lot of them around Cambridge, though the mountain biking there isn't up to much! It's likely to mean a permanent role not contract work.
Yep.
We have our candidates write / debug real code in the interview...
You can still earn a fortune as a contractor, you just have to know what you are doing these days, as opposed to the 90s when you didn't.
woody74 retro84
I disagree, I think if you are good there is still good money to be made.
I am a contractor specializing in Embedded and Linux development and I have not been out of work since I started 18 years ago.
I am seeing the best rates I have ever had at the moment.
Most of my clients really struggle to find decent people. Lots of people may have gone to Uni but not many of them seem to have studied Engineering !!!
There is still a massive glut of trained people so unless you can really specialise in a technology then without any specific background it could be quite hard.
That just doesn't ring true (in the SE). Having tried to hire SW programmers it was like getting blood out of a stone to even get a UK CV, we could only get Chinese / Indian CVs from agencies. So I've no idea where this glut is that you're talking about.....
You know all those little problems where sometimes it doesn't work correctly? Well you have to fix those. You have to be able to predict how long it's going to take you too.
Like that a lot, very accurate.
I've been a software developer for over 10 years, started my own software company too and am now just going through some interviews to get back working for a large company again. Seems to be plenty of roles out there as far as I can see (finance work in London). Java or C#. Decent £££ too.
Lots of good replies and lots to think about.
What area is the PhD in?
Computer science - computer vision really.
I don't know how much longer your PhD is
3 years to go..
sideshow, it's interesting that you point out I have an "Academic skill set". One of the things that concerns me most is that I feel as though I'm not really gaining any skills. Working in industry, at least if I found a good employer, I would be regularly be getting feedback, training and reviews. At the moment it feels like I'm stumbling from one day to the next and not really sure if I'm learning anything correctly, or whether the things I am learning are worthwhile in the long run. I suppose this is down to my self organisation and possibly supervision so I should take some time to consider that.
chambord - MemberSome interesting replies, thanks a lot. Possibly exaggerated my age in the initial post - I'm 28 so possibly not middle aged. I am having a crisis though.
Just some background - I'm a CS graduate, currently doing a PhD but I don't think I can continue with it (See my previous post about hating my PhD - it hasn't improved). I don't enjoy academia, or really even being around the department. I'm slowly going insane and losing my ability to socialise and interact with the general population.
I'd like to develop more practical skills. Always liked coding when doing my undergrad, and would like to become a "Professional", that is work at a decent company and learn decent practises.
I was really just gauging whether people in the job actually like it in the long term (I've only ever worked on fairly small projects and for short periods of time).
Any things I should particularly look out for in a company?
Once you are demotivated in doing your PhD you will suffer. If you are still in your 1st or 2nd year then [b]get out quick before you become an old man with less opportunity to be employed.
[/b]
The only reasons you should do a PhD is either to become an academic or you enjoy doing research which may pay you peanuts (most pay peanuts). Your future job (assuming in academia) depends entirely on the funding you receive and gone are days where you are pay salary. [b]My advice get out quick! Run! [/b]
Coding is the most tedious and boring work in software (well, that's what the software people told me - they hated it big time). The problem is that companies may not be ready or willing to train you (they prefer you to have the experience in coding in some form when you join them).
[u]But you have the advantage of being enthusiastic with coding[/u], so if you can show them this side of you then you have the chance to get in and to be trained. You will take lots of shite thought ... as you team leader will kick your arse if s/he/they need to spend too much time on you.
Be prepare to handle the stress of coding deadline as I was once told by my software programming mates that you got to be a robot to stay awake. They ended up hiring Indians sw coders ...
In the long term for coders? You pass the job of coding to junior staff and you kick their arses for not meeting the deadline and you will hire Indian software programmers because most of your staff will leave and you are to be blamed ... oh ya ... good software coder(s) will hold the project ransom and you give in ...
One of the things that concerns me most is that I feel as though I'm not really gaining any skills
You don't need skills in entry level dev other than to sit and write good code.
Coding is the most tedious and boring work in software
No, it's not - testing is worse, and project management is worse still imo.
Working in industry, at least if I found a good employer, I would be regularly be getting feedback, training and reviews
LOL!
The companies that batter you with pointless red tape aren't the ones you want. You want the ones that rely on your innate intelligence and aptitude to sort stuff out and get it done - that kind of experience is far better than any training. Those companies are generally small ones.
I was once told by my software programming mates that you got to be a robot to stay awake
Only in bad companies.
getting blood out of a stone to even get a UK CV,
we see that, loads of eastern european, some indian, etc.
Coding is the most tedious and boring work in software (well, that's what the software people told me - they hated it big time)
they sound like the kind of losers whose jobs are ripe for outsourcing...
Testing not so bad if you can automate it, and it's good in that the problems are nearly always someone elses...
production development might almost be at it's peak of interest for developers, with all the TDD/mocking/IoC and other testing technologies/frameworks.
It's a somewhat based on the fact that programmers don't like testing much, but they like writing code, so get them to write code to test their code, often more test code than actual code.
Plus some of the testing frameworks employ nice geeky techniques, so that is even better.
Obviously I am not talking of that 'dark' side of programming involve atrocities like VB, and worse, VBA.
chambord - depending on what you did between undergrad and PhD, and especially if you can blag an MPhil or MSc out of your abandoned PhD, then you're not too late to get on a reasonably salaried graduate training programme with a big employer.
Has anyone here used stackoverflow careers, you'd think that might be a good place to look but I've never had the occasion to.
Definitely there are good and bad companies; ones that pressure their employees vs ones that train them. If you are lucky enough to have your pick of job offers then ask around as much as you can to dig up the dirt on them. In your situation I imagine being in a good company on a lower salary beats earning more in a bad one.
Agree with most stuff on this thread apart from the people who said coding is boring. If you agree with them don't go into software 🙂 And VB isn't that bad, it has its place for some tasks (if you want horror try coding in visual lisp!). Language is irrelevant really it's how you use it.
Oh and about your PhD. PhDs are very self directed and you have to guess the unknown to channel your efforts into something you personally think worthwhile while staying within the remit of a funding application which is probably bollocks and bears little relation to what you will eventually produce. If you knew what you were doing it wouldn't be research would it! On the plus side until your 3 years are up you kind of have a blank cheque and a carte blanche to do this. And you are the customer so you get to work how and when you choose.
If you're unsure about it with 3 years to go still, and you can't address your problems by something simple (like more communication with your supervisor and maybe a program of learning on some specific topics), then you're right it's probably not for you - get out sooner rather than later.
It's a very broad church. What domain and aspect interests you?
Definitely there are good and bad companies; ones that pressure their employees vs ones that train them
question is, which is the good one here?
If you work in the so-called agile environment, with two week dev cycles, the idea is to keep everyone under a slight bit of pressure all the time...
Language is irrelevant really it's how you use it.
I sort of disagree on that one - on one hand there is the ability to code yourself out of any problem/framework deficiency if needed, and the other one is the naturalness of using certain features in a language, normally to support using abstractions better.
And another one is the maturity of the development 'community' - although there are too many frameworks in the Java world there is a stronger likelihood that you will find support for something you want to do.
I have just had to support Soap with Attachments with WCF and it hasn't been a particularly easy ride. I now need to support something called Schematron, and I think I will give up and just write a bridging 'bus' and use multiple languages.
And another one is the maturity of the development 'community'
Agreed. </hijack>
Language is irrelevant really it's how you use it.
Well, technically, maybe, but different industry sectors use different languages generally. If you learn C then you're likely to end up writing embedded software; Java and you will probably end up doing enterprise apps.
Complete mastery of a programming language is essential if you are going to be a useful programmer. Maintaining that mastery can be an issue if you have all the other development roles or use several languages!
Whilst excellent programming skills are essential for a development project, it's only a fraction of the skill-set required for a project to be successful. I haven't programmed a computer for ~7 years. I'm too busy to miss it.
Complete mastery of a programming language is the easy part, it is the breadth and depth of all the frameworks that is the issue.
Everybody has the buzzword acronyms on their cv, but they often don't have any depth in that framework.
So nowadays it seems that you just want someone who has the fundamental programming skills and can use google well !
Plus if you use productivity/refactoring add-ons like resharper it fills in stuff from intellisense and resolves references for you so you never learn the frameworks properly anyway.
And then when you combine wrapping any APIs you use into nice abstracted interfaces, you never get to learn them properly as after a couple of weeks you stop actually using such APIs directly anyway. I can't remember the MQ API but I wrote our library that uses it, so if I put that my cv it wouldn't mean a lot.
At interviews we normally ask someone to describe a system that they worked on and then drill down into it - if they were a bit part player it will become apparent.
I also have a short c# function to add a node into a sorted singly linked list, which has a few bugs in it that aren't immediately apparent, and I have found this a reliable test ever since I had a C version.
Basically it tests if they are considering the edge conditions when stepping through the code, like node at start or list, node in the list, and node at end of list, and maybe empty list as well.
15 years experience here. Always received decent pay IMO, and never been short of puzzles to entertain my brain. Plus you get to doss about on STW, obviously.
What area is the PhD in?
Computer science - computer vision really.
You should steam in with that kind of background. If you've not long left in the phd, maybe stick it out - or try and convert it to MSc.
If you want on job training, possibilities for promotion & bonuses, and don't mind working on a big systems where you're a small part of the whole affair, go for a big company. You also get to see a good spectrum of the different specialities within software dev, which means you can pick where you want to head quite easily.
Smaller companies tend to allow you more free reign to code how you want (and make all the mistakes you want) and you'll probably have the chance to have a large input into the end product. Its less likely to find specialists and people will be "wearing a lot of different hats". Career path opportunities aren't easily come by, though, without leaving and going for a position somewhere else.
Both can be good, both can be bad - depends on the company. I've learnt a lot from both ends of the scale.
I'd aim to look for somewhere that values the word "engineering". There's lots of people who know code; far less who can engineer. One doesn't pay so much, the other does. One will be working with your ten gallon hat on, the other will involve decent process & practices. I guess ultimately engineering is the science/art of doing it right, wheras writing code can be done both badly and easily. My experience is that customers ultimately are willing to pay for things that work, a lot more than crap knocked up in a hurry, you can imply a lot about how a company will work from its customers and who they are (i.e. don't work for a startup whose only customer is a nigerian gangster, just to pick a completely random example out of the blue)
I started life as a Programmer, as that what it was called in those days - the days when we handwrote code onto sheets and it was input by the Data Input girls... Now managed 30 years of IT, somehow.
It's a job, and like most others can be good/bad/indifferent. How you'd get into it these days, no idea.
And the good thing of outsourcing work; is that it quickly shows how crap the company is at spec-ing and the like. Because if you need to 'know' something that isn't in the spec to be able to develop the solution, then it's a crap spec. And folk never add enough cost in to cover the management/governance of offshore work, but then tbh they usually also don't add enough cost to cover the management of most contracts.
(i.e. don't work for a startup whose only customer is a nigerian gangster, just to pick a completely random example out of the blue)
If you change the word ganster for MNO (Mobile Network Operator) then you've just described my job! I've just spent a couple of days developing a new feature for one (in BASH if you want to know). I quite like Telecoms, hack away on my laptop at my desk in Cambridge, whilst implementing features on a mobile network in Nigeria. The irony being I have better visibility of their network than they do and I'm 6000 miles away. Just shows how small the world has become....
@chambond, @sideshow's comment is a good one, try and get an MSc out of what you're doing. 28 you're only just getting started in life mate ! Why not try and get something relate to your field, computer vision, digital imaging tv etc. I have a mate who has worked for Adobe and Siemens on similar, here and abroad.
In my day with an quant skill and a phd you went into finance ! It might not be for you but there is still work and contracting available.
"Computer Programming" is a bit broad - a generalisation. If you've an interest and a talent in it why not mess around with some mobile apps, have a play in your spare time. The world is moving towards mobile devices at a fast pace.
Software development - or engineering, or programming - appeals to a certain style or character of person IME - I like, I've been doing it for nearly 30 years, don't think I'd choose anything else TBH - not now anyway!
Have done the gamut of assembler, C, C++ and now C# - along with methodologies, techniques, frameworks. TDD and the like isa bit of a marmite thing but has more pluses than minuses I think.
Have always worked for small, medium or indeed very small businesses and I think if that works out it's a better route - latterly - than the big company style - if that works for you anyway.
Programming a game or small set of routines is one thing, working with a team on a bigger project is another. The scope for lone wolf style of programmers is probably receding fast.
Try it, if you like it go for it. computer vision has a big outlook I'd have thought - likes of military, oil&gas survey work, all that sort of thing..
chambord: just in case someone else hasn't already said it, software development can be a very solitary role it creeps up on you unannounced. Try to stay sociable.
The other thing is that if you don't 'get' software development its not the kind of work you can learn how to do and be good at it. If you have a genuine interest in code and think that you might even code for fun, then go for it but otherwise it will be hard work and deadly dull.
Good luck
BigData and Cloud are the buzz words of the moment and if you are so inclined you could pick a couple of applications that can utilise both, learn lots about them and then watch the cash roll in as a highly paid consultant....
In my experience whilst many companies are out sourcing to off shore plenty more are still hiring developers in the UK and the quality of developers out there varies enormously but many are crap.
If you don't want to have to keep re-learning a new language ever couple of years as fashions change and want to be able to get into consulting a few years down the line I would get into databases - particularly the RDBMS kind to start off with - Oracle or SQL Server although Postgres and MySQL skills are also in demand.
Once you get your head around that pick up some HADOOP, Hive and Pig skills. These are skills that many data professionals think will be in demand over the next 3-5 years as more and more companies start trying to do stuff with all the unstructured data they can harvest from their websites, sensors, Server logs etc.
The skill will then be to write good MapReduce code to get that unstructured data back into the RDBMS and then into Excel, SharePoint, Reporting Cubes etc. for Self-Serve BI.
Note: None of this may come to pass but there is plenty of hype about it at the moment and Microsoft and the rest are investing heavily. I've seen some great demo's of this start to finish i.e. starting with HADOOP filtering all the way through to PowerBI excel reports on a tablet.
General consensus appears to be that most people enjoy the job, so that's encouraging. I'll keep programming and working on skills and may one day do it.
I'll have (Another) chat with my supervisor and see if we can sort it out. I forget that I'm in a fairly priviledged position really, and I can shape the next 3 years to suit me. I do enjoy the work it's just the feeling that I'm not making any real progress that winds me up, plus I'm almost 30 and there's something niggling in my head that says I should probably have a job by now, or at least be making steps towards a career path.
Meh, one to sleep on again I think. Hopefully wont be making a similar post in a few months time - if I am please be blunt and tell me to sort myself out!
And once again, cheers everyone for the replies - plenty to think about.
Yes. No. Maybe. I quit a PhD at the 11th hour, I wish I had done it earlier tbh as I wasted a good 18 months + trying to fix the unfixable living on no money.
Personally I think how good software is depend a lot on the field of application. Personally I also think the buzz word areas are the dullest, but that is because I like engineering application due to having a more engineering background and it plays to my personal strength to use my subject knowledge. There are lots of niches. Have a look around see what jobs there are.
Friend of mine started as a developer programmer, progressed to contractor, because of his knowledge base as contractor company he now works for asically tied him up to them as technical architect, now he's the guy behind most of your mobile banking apps, stressfull job but he seems to enjoy it
Friend of mine started as a developer programmer, progressed to contractor, because of his knowledge base as contractor company he now works for asically tied him up to them as technical architect, now he's the guy behind most of your mobile banking apps, stressfull job but he seems to enjoy it
Started life as a programmer, graduated to a software engineer 😉 and then spiralled off into the world of security. Mostly C and assembler at the start for position systems, the a lot of crypto, A LOT, and then i helped write a firewall daemon and the rest is history.
Truth be told i was a crap software programmer, the minutae annoyed me which wasn't the best. However, even now in my lofty position I understand how stuff works significantly better than many other IT 'experts' because i know the background and how stuff talks to each other. I did a sandwich course precisely to have industry experience and that was *thinks* jeeepers 1994 !
finish your PhD. Then consider R&D jobs. CS skills are in variable demand in a number of R&D-based industries that still exist in the UK. It's also a handy help in getting a transfer to or job in the USA or Canada. A PhD will improve your prospects and employability in the right places.
SW dev can be really rewarding. It can also be incredibly tedious. If you're finding your PhD a struggle for the reasons you stated then the world of work might also be a bind. Give yourself as many options as you can.
It can also be incredibly tedious.
I seem to have missed this bit 🙂



