Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie
Hi there,
There is an issue with role permissions that is being worked on at the moment.
If you are having trouble with access or permissions on regional forums please post here to get access: https://www.boards.ie/discussion/2058365403/you-do-not-have-permission-for-that#latest

Skill Shortage in Irelands IT sector

  • 24-03-2010 7:21am
    #1
    Registered Users, Registered Users 2 Posts: 1,466 ✭✭✭


    Im a software dev and work in a software dev company and im interested to read articles stating that the number of IT graduates entering the work place has been dropping since 2000.

    Dropping to the point where Irish companies are struggling to fill roles. Now I know we are in a recession, but the place I work for looks to fill newly created dev roles now and again but struggles to fill them and has sought devs from other countries such as the UK.

    What im wondering, are the articles I have read (source is usually university written and published in a national paper) are they accurate ? or is it just the place that I work that is fitting into this trend of finding it hard to locate qualified dev resources ?

    What are others experiences with this ?


Comments

  • Registered Users, Registered Users 2 Posts: 2,472 ✭✭✭Sposs


    I think it's all swings and roundabouts, alot of people went into IT courses around 2000 as it was in a boom and looked like a good career choice , then it went bust and course numbers dropped , then it increased but people began to see it as a "call centre" job so numbers dropped again, now were seeing a shortage again, hearing about the jobs being created by ebay/IBM/Linkedin etc will ensure numbers will rise again.

    I think that's why its always better to select a career that you actually enjoy and not just do what happens to be in vogue at the time.


  • Registered Users, Registered Users 2 Posts: 515 ✭✭✭NeverSayDie


    Funny you mention that, was just talking about this yesterday. Things do appear to be picking up hiring-wise - I have a few contacts in other companies who are pretty keen to land folks lately, plus more enquiries than usual from recruiters. In fact, spent a while yesterday afternoon talking to a recruiter who was trying to headhunt me for various things, he appeared to have quite a lot of stuff on his books he needed to fill - mostly arriving in the past month or two. His crew were also offering pretty reasonable referral bonuses, which would suggest it was more than just the usual recruiters' hyper-enthusiasm, and they needed to put their money where their mouths were. As Sposs mentions, incoming US firms seemed to make up a fair bit of what his people were trying to fill.

    That's for experienced folks mind - things are still pretty tight for graduates from what I've seen, the old problem being that they're not much use without commercial experience, which they'll have a hard time getting when they're not much use. I get the impression recessions exacerbate that somewhat - when you're trying to keep costs down, affording the risk of picking one with potential, and the time and resources to train and mould a fresh graduate into something useful isn't necessarily worthwhile, even if they are cheap and plentiful. Likwise larger companies may have suspended their formal graduate programs, and haven't gotten round to starting them back up yet.

    In more general terms, yeah, good development talent appears to be hard to come by. I know companies I've worked with that were interviewing over the past while, often ended up pretty horrified by the quality of candidates who ended up in interviews. Decent CVs of course, but once they were on the spot, technical knowledge and general approach was very weak indeed in many many cases. Basically, folks who shouldn't have been calling themselves software developers, certainly not experienced ones anyway. It's not even the purely technical knowledge and skill that was missing - the attitude and approach seemed to be way off base; unable to discuss tech questions they didn't know the answers to, no apparent insight or broader awareness of their trade, etc. Bit worrying from an industry/profession point of view, though tbh it did boost my personal confidence quite a bit - I wouldn't rate myself an especially good engineer, but I can certainly compete with that standard with one arm missing. As a professional engineer though, it worries me a bit that the talent pool we have available is apparently that shallow. It would also tend to suggest bad things about our education of developers. I mean, if you can't sensibly discuss a problem that you don't have a solution for, or a question you don't know the answer to, wtf are you doing in this line of work? That's what we do.

    A Coding Horror post from a while back on the theme of programming ability specifically;
    http://www.codinghorror.com/blog/2007/02/why-cant-programmers-program.html


  • Closed Accounts Posts: 31 DLohan


    Funny you mention that, was just talking about this yesterday. Things do appear to be picking up hiring-wise - I have a few contacts in other companies who are pretty keen to land folks lately, plus more enquiries than usual from recruiters. In fact, spent a while yesterday afternoon talking to a recruiter who was trying to headhunt me for various things, he appeared to have quite a lot of stuff on his books he needed to fill - mostly arriving in the past month or two. His crew were also offering pretty reasonable referral bonuses, which would suggest it was more than just the usual recruiters' hyper-enthusiasm, and they needed to put their money where their mouths were. As Sposs mentions, incoming US firms seemed to make up a fair bit of what his people were trying to fill.

    That's for experienced folks mind - things are still pretty tight for graduates from what I've seen, the old problem being that they're not much use without commercial experience, which they'll have a hard time getting when they're not much use. I get the impression recessions exacerbate that somewhat - when you're trying to keep costs down, affording the risk of picking one with potential, and the time and resources to train and mould a fresh graduate into something useful isn't necessarily worthwhile, even if they are cheap and plentiful. Likwise larger companies may have suspended their formal graduate programs, and haven't gotten round to starting them back up yet.

    In more general terms, yeah, good development talent appears to be hard to come by. I know companies I've worked with that were interviewing over the past while, often ended up pretty horrified by the quality of candidates who ended up in interviews. Decent CVs of course, but once they were on the spot, technical knowledge and general approach was very weak indeed in many many cases. Basically, folks who shouldn't have been calling themselves software developers, certainly not experienced ones anyway. It's not even the purely technical knowledge and skill that was missing - the attitude and approach seemed to be way off base; unable to discuss tech questions they didn't know the answers to, no apparent insight or broader awareness of their trade, etc. Bit worrying from an industry/profession point of view, though tbh it did boost my personal confidence quite a bit - I wouldn't rate myself an especially good engineer, but I can certainly compete with that standard with one arm missing. As a professional engineer though, it worries me a bit that the talent pool we have available is apparently that shallow. It would also tend to suggest bad things about our education of developers. I mean, if you can't sensibly discuss a problem that you don't have a solution for, or a question you don't know the answer to, wtf are you doing in this line of work? That's what we do.

    A Coding Horror post from a while back on the theme of programming ability specifically;
    http://www.codinghorror.com/blog/2007/02/why-cant-programmers-program.html

    Not a lot posted on the hiring websites though. Maybe takes time to filter through.


  • Registered Users, Registered Users 2 Posts: 4,240 ✭✭✭bullpost


    From my experience there seems to be a shortage of young Irish experienced developers e.g. Java. Theres lots of older ones around (from Iona etc.) but the younger ones tend to be immigrants so would endorse what the previous poster said about this shortage.
    I'd imagine that its got something to do with thr auld Celtic Tiger and the choices graduates made for careers during that period but could be completely wrong!


  • Closed Accounts Posts: 31 DLohan


    bullpost wrote: »
    From my experience there seems to be a shortage of young Irish experienced developers e.g. Java. Theres lots of older ones around (from Iona etc.) but the younger ones tend to be immigrants so would endorse what the previous poster said about this shortage.
    I'd imagine that its got something to do with thr auld Celtic Tiger and the choices graduates made for careers during that period but could be completely wrong!

    Probably was the choices that they made in past 6 years. IT was in vogue in 2000 but then the downturn came and fewer people engaged in it. There was an exodus of sorts.

    The problem with a lot of IT is one of diminishing returns. Some companies are charging less than they were some years ago, which is fine if your costs are doing the same thing. But when ever do costs go down?

    I would imagine trades and property development-associated activities were more popular.


  • Advertisement
  • Registered Users, Registered Users 2 Posts: 71 ✭✭zdragon


    Sposs wrote: »
    ...by ebay/IBM/Linkedin etc will ensure numbers will rise again.
    except IBM there will be yet another "call center" positions.


  • Moderators, Science, Health & Environment Moderators Posts: 10,088 Mod ✭✭✭✭marco_polo


    We struggled to get 3-4 devs recently with 1-2 years experience, speaking to one of our the recruiters it was hard to even find suitable candadites to interview.


  • Registered Users, Registered Users 2 Posts: 102 ✭✭farreca


    Marco

    Just as a matter of interest what sort of dev's were you looking for (java, c# ..) ?


  • Registered Users, Registered Users 2 Posts: 40,038 ✭✭✭✭Sparks


    bullpost wrote: »
    there seems to be a shortage of young ... experienced developers
    There might be a logical reason for that ;)

    Frankly though, anytime we were hiring, the problem was never a lack of applicants; the problem was a lack of people I'd trust to tie their own shoelaces, let alone get near the codebase that paid our bills.

    Personally, I trace most of this back to around 1995/6, when the student computing research group in TCD died out. That was the point where engineering students stopped (by and large) doing extracurricular work (yes, one or two each year continue to do that, but they're the same one or two that could have passed finals within six months of walking in the front door so they don't count). Prior to that point, you had folks writing microkernels, compilers, and other cool software projects, or building robots or doing other interesting things for fun; and learning fairly deep lessons as a result; after that point, you had people who just didn't want to spend any time on anything that didn't feed towards their final degree mark. So we have a lot of grads with higher scores in their finals (grade inflation my left buttcheek), but whose overall skillset and attitude is sorely lacking. Hell, it even spread to the sports clubs, it was so widespread (almost every sports club in the colleges saw a downturn in membership around that timeframe).


  • Registered Users, Registered Users 2 Posts: 2,164 ✭✭✭hobochris


    As a not so recent grad(out of college 2 years)/junior dev, one thing I have noticed which has been a huge battle for me is the lack of companies willing to help a grad bridge the gap between the experience they want and the experience grads have.

    I found a lot of companies hiring for a grad position expecting the grad to have 2 years commercial experience in a particular framework. When reality what they are really looking for is a more experienced dev to slum it in a lower position.

    This type of situation can dishearten even the most enthusiastic grads, which in turn slowly chips away at their motivation, something that is very much needed for any grad trying to keep their head down and work hard to turn themselves into a competent experienced developer.


  • Advertisement
  • Registered Users, Registered Users 2 Posts: 7,468 ✭✭✭Evil Phil


    I have heard, although I don't know how true it actually is, that some multinationals will simply not hire grads from specific colleges/universities in the country. Now I don't know what companies or universities are included.

    I've also read an interview with one of the founders of Havoc where he said that his new venture simply could not get the quality of grads that they needed in Ireland. Personally I feel that there's a focus on getting people into jobs rather then getting them into computing as a vocation.


  • Registered Users, Registered Users 2 Posts: 40,038 ✭✭✭✭Sparks


    Yeah, but Havok is a startup and startups... well, let's just say that they often speak in terms which espouse a view of the world not shared by the actual inhabitants of that world :D
    I mean, some startups I've seen will go looking for programmers who are exceptionally high-level experienced experts in multiple areas, and look to pay them peanuts... and then complain that there aren't enough good people to go round but lots of people who don't make the grade.
    It's not to say that they're incorrect, just that the specific problem they're seeing is self-inflicted a lot of the time.


  • Registered Users, Registered Users 2 Posts: 2,781 ✭✭✭amen


    but Havok is a startup and startups.

    hardley. Its been around for several years and was sold to Intel( I think).

    Has a large staff and is the main SDK for life like motion on gaming platforms.

    They want graduates with good numerical skills pref PhD/MsC in physics, maths or comp sci.

    Coincidentally the same type of grads the financial institutions like in UK/USA but not here!


  • Registered Users, Registered Users 2 Posts: 265 ✭✭scorn


    marco_polo wrote: »
    We struggled to get 3-4 devs recently with 1-2 years experience, speaking to one of our the recruiters it was hard to even find suitable candadites to interview.

    That's strange - I was speaking to a recruiter yesterday and was told that the market had picked up more than expected (and the rates were lifting too - referring to .net/sql contract work).

    However, the recruiter said that there were still many candidates available and until such time came where there weren't, the rates would probably not rise that much more...

    So - it does seem that there are devs out there looking for work, though I do sometimes question an agency's ability to judge a candidates skill level (giving credence to Sparks comment:
    Frankly though, anytime we were hiring, the problem was never a lack of applicants; the problem was a lack of people I'd trust to tie their own shoelaces, let alone get near the codebase that paid our bills.


  • Registered Users, Registered Users 2 Posts: 40,038 ✭✭✭✭Sparks


    amen wrote: »
    hardley. Its been around for several years and was sold to Intel( I think).
    Eventually. But in the beginning, they were a startup like any other (I knew quite a few of the people involved at the time, they weren't an exception to the rule) and their mindset doesn't seem to have changed enormously from what I can see. The kind of grads they were looking for were polymaths; the kind of money a polymath can pull down at a smart company is fairly formidable. Most places won't offer enough to retain them.


  • Registered Users, Registered Users 2 Posts: 859 ✭✭✭OwenM


    I'm facing this dilemma soon, about to graduate and can see plenty of jobs in Java in my locality but all looking for min 2 years experience. I went back to college to get a degree so I could apply for jobs as a software engineer. I personally think that small companies generally have a poor attitude to training and do whinge about the lack of talent but where do they think the existing experienced engineers came from? Someone had to hire them once upon a time with no experience.


  • Registered Users, Registered Users 2 Posts: 40,038 ✭✭✭✭Sparks


    "min 2 years experience" is often nothing more than a HR made-up-on-the-spot bit of BS really. I can remember seeing ads for jobs where three years of java experience was sought. This was less than two years after java was publicly released...

    One of these days, a company will let the engineers write the job specs. You'll know the difference because then the specs will actually tell you what you'll need to know to do the job and what the job will be like and how much the job will pay. The ad should stand out from the rest by a country mile...


  • Registered Users, Registered Users 2 Posts: 18,272 ✭✭✭✭Atomic Pineapple


    hobochris wrote: »
    As a not so recent grad(out of college 2 years)/junior dev, one thing I have noticed which has been a huge battle for me is the lack of companies willing to help a grad bridge the gap between the experience they want and the experience grads have.

    I found a lot of companies hiring for a grad position expecting the grad to have 2 years commercial experience in a particular framework. When reality what they are really looking for is a more experienced dev to slum it in a lower position.

    This type of situation can dishearten even the most enthusiastic grads, which in turn slowly chips away at their motivation, something that is very much needed for any grad trying to keep their head down and work hard to turn themselves into a competent experienced developer.

    I graduated last May and found the same situation, I didn't get a job until December.

    Most interviews I had sent the clear signal that they were after someone who was willing to take a pay cut that had the 1 or 2 years in a commercial enviroment or a graduate that had specific area of knowledge and an interest in that area.
    OwenM wrote: »
    I'm facing this dilemma soon, about to graduate and can see plenty of jobs in Java in my locality but all looking for min 2 years experience. I went back to college to get a degree so I could apply for jobs as a software engineer. I personally think that small companies generally have a poor attitude to training and do whinge about the lack of talent but where do they think the existing experienced engineers came from? Someone had to hire them once upon a time with no experience.

    What area are you from? I had to move from the Northeast to south Dublin for my job. As above took awhile to get it but I get myself busy with personal projects while I was looking.
    Sparks wrote: »
    "min 2 years experience" is often nothing more than a HR made-up-on-the-spot bit of BS really. I can remember seeing ads for jobs where three years of java experience was sought. This was less than two years after java was publicly released...

    One of these days, a company will let the engineers write the job specs. You'll know the difference because then the specs will actually tell you what you'll need to know to do the job and what the job will be like and how much the job will pay. The ad should stand out from the rest by a country mile...

    Cant agree with that more, I was interviewed in IBM twice and both times I thought I was in the wrong interview, the jobs were completely different to what was advertised


  • Registered Users, Registered Users 2 Posts: 7,468 ✭✭✭Evil Phil


    I remember in March 2003 applying for a job in .Net and the agent told me I didn't have thee years .Net experience. When I pointed out that .Net hadn't been out for three years he returned with, not if you've been working for Microsoft! When I asked him to clarify he said that the job will only go to ex-Microsoft staff. Didn't put that in the ad though, I thanked him for wasting my time.

    Which reminds me, I tweeted this earlier, I saw a job description today for expert C#/Asp.Net developer with php exposure. Which of the bat isn't unreasonable I suppose, any dev should have exposure to more than one language. But seems a bit split-personality to me, either hire a good C# dev or a good php. If you need both skill sets you need two devs, or am I being draconian? It probably a bad example. Here's what I'm talking about:

    Senior Dev position: Asp.Net/C# or Vb.net developer with outstanding Server development experience, must have exposure to Oracle and C++. 3 years + experience a must.

    Who exactly is that job description trying to hire? It's all over the f*cking place. Agencies really haven't a clue how to hire.

    In 2005 I was told by a company that "I fell between two stools" in that I had a good share of Asp.NET and Sql Server but I need to be great at one or the other, couldn't be both (which is true). I stuck to Asp.NET and left the majority of stuff DB stuff to the DB Devs. Got some really good jobs on the back of that move.


  • Registered Users, Registered Users 2 Posts: 40,038 ✭✭✭✭Sparks


    I dunno - I've been between two stools for about thirteen years now, doing both development and sysadmin stuff (hell, I can't even avoid it in moderating here :D ). You tend to focus on the stuff you're doing for the particular job you're in at the time (so for place, it was pure dev, in another it was about 80% sysadmin, and in most it's been a more even mix). It does take longer to learn everything, but personally I wouldn't be comfortable building something without knowing what's going on right down to the iron. But that's just the control freak in me I guess.


  • Advertisement
  • Registered Users, Registered Users 2 Posts: 3,766 ✭✭✭Reku


    hobochris wrote: »
    As a not so recent grad(out of college 2 years)/junior dev, one thing I have noticed which has been a huge battle for me is the lack of companies willing to help a grad bridge the gap between the experience they want and the experience grads have.

    I found a lot of companies hiring for a grad position expecting the grad to have 2 years commercial experience in a particular framework. When reality what they are really looking for is a more experienced dev to slum it in a lower position.

    This type of situation can dishearten even the most enthusiastic grads, which in turn slowly chips away at their motivation, something that is very much needed for any grad trying to keep their head down and work hard to turn themselves into a competent experienced developer.
    I'd have to agree.
    Pretty much all the jobs either want 2+ years of experience, even when they're in the graduate sections of jobsites, or such a diverse skillset that you'd be looking at at least a good few years solid plugging away (as in eat, drink, sleep programming and software, nothing else in your life) if you're to genuinely know the languages/technologies they're asking for instead of just having a basic introduction.
    It does get disheartening since the reality tends to be that you need experience to get experience if you can't rely on nepotism. At times I just feel fed up studying/practicing since it seems like I might as well be counting the grains of sand on the shore....:(
    Unfortunately I've heard that the college I went to is number one on the multi-national hiring blacklist (would explain why jobs I applied to that I'd be plenty qualified for didn't even call me for an interview when they continued to advertise the vacancy) so I just have to keep studying away to get certifications to prove I know my stuff.

    Leaves me thankful I never took up my former employer's offer to pay for me to do a PhD (had a good manager who wanted to ensure my knowledge level would be recognised even if I did leave the company), since there's very few offerings in science job-wise (regardless of the bull**** the government spews about there not being enough science graduates, very few of the science graduates I know got actual jobs in science). Although it looks like it'll be an extremely long time before I find a job in IT I'd still bet it'd be even longer before I find one in science (hence why I went back to college to study IT).:(


  • Moderators, Science, Health & Environment Moderators Posts: 10,088 Mod ✭✭✭✭marco_polo


    farreca wrote: »
    Marco

    Just as a matter of interest what sort of dev's were you looking for (java, c# ..) ?

    Either .Net of Java, can't say much more than that ;). Feel free to PM me.
    scorn wrote: »
    That's strange - I was speaking to a recruiter yesterday and was told that the market had picked up more than expected (and the rates were lifting too - referring to .net/sql contract work).

    However, the recruiter said that there were still many candidates available and until such time came where there weren't, the rates would probably not rise that much more...

    So - it does seem that there are devs out there looking for work, though I do sometimes question an agency's ability to judge a candidates skill level (giving credence to Sparks comment:

    We are probably a little heavy with senior developers at the moment. In general the company is fairly good to take on grads and took on a couple even this year, but this time around were specifically looking at the junior dev with experience catagory so not really what the experienced contractor would be interested in and vice versa I suppose. Now the ad was posted on a well known job site and the response was quite disappointing by all accounts.


  • Registered Users, Registered Users 2 Posts: 1,922 ✭✭✭fergalr


    Sparks wrote: »
    I mean, some startups I've seen will go looking for programmers who are exceptionally high-level experienced experts in multiple areas, and look to pay them peanuts... and then complain that there aren't enough good people to go round but lots of people who don't make the grade.
    It's not to say that they're incorrect, just that the specific problem they're seeing is self-inflicted a lot of the time.

    I would like to express very strong agreement with this post.

    There's been quite a few media complaints on this topic by certain companies, and, frankly, while I may be wrong, I've always felt the problem wasn't so much the existence of suitably qualified programmers, but the willingness to pay them suitably to secure their services. The good tech people are often willing and able to travel to get better experience, and better salaries, if they get a better offer elsewhere.


    Now, thats not to say that there aren't problems in this field in Ireland. I believe there are huge problems here with people not being pushed hard enough in CS courses and generally not being held to a high enough standard... This is part of a wider issue in Ireland though - we really need to raise our game in the tech/sciences to compete internationally. The rest of the world seems to be getting better at it, and we seem to be getting worse.


    Its also interesting to look at CAO points for CS courses. I've always been hesitant to say that, as I'm not sure what the LC actually measures... But it is worth noting that CS in TCD fell from 475 in 1999 to 350 in 2009 - a drop of 125 points over 10 years. This is a huge shift along the leaving cert curve - its not a simple scale.
    And, if nothing else, this clearly shows a huge reduction in demand by students with high points.


    So, I do think there are systemic issues out there - enough people dont want to do tech, and colleges aren't holding those who do to a high enough standard.


    But at the same time, I do think there's always good grads coming out of the courses, people that really like the area, and have pushed themselves in their own time - possibly outside the framework of their course - to get the knowledge and education they need.


    So, as the man says, if you have a problem, if no one else can help, and if you can find them, maybe you can hire them...
    but don't expect to pay peanuts, or even just to pay a lot cheaper than you do in your other locations.

    That attitude does almost as big a disservice to the standard of graduates as the buggy education system does, and it'd be nice if this could be discussed when various parties are soapboxing in the media about it - its worth remember there's always a conflict there, in that the companies don't just want good grads - they want cheap good grads - and it might be good if journalists would highlight or explore that issue when printing their comments.


  • Registered Users, Registered Users 2 Posts: 40,038 ✭✭✭✭Sparks


    Something else to lob at companies like a piece of overripe fruit at the stocks, is that there are not very many companies out there - and almost none in the SME sector - that take CPD seriously. I've worked for one company where after much arguing and protesting, the coding team was given a budget of about €100 a month to buy tech books from Amazon, which were then to be tracked by one of the coders in a library system and you had to sign them out if you took one home to read.

    No, that's not a bad attempt at an early april fool's joke. That was actually thought to be a progressive approach.

    Seriously. If you're not willing to take on CPD in a proper manner -- and just look at how well the civil engineering sector does it! -- you have no business complaining about the standard of potential hires, because you are part of the problem.


  • Registered Users, Registered Users 2 Posts: 1,466 ✭✭✭Smoggy


    its lucky that Irelands growth over the next 10 years is based on a high tech economy :rolleyes:


  • Registered Users, Registered Users 2 Posts: 3,766 ✭✭✭Reku


    Smoggy wrote: »
    its lucky that that Irelands growth over the next 10 years is based on a high tech economy :rolleyes:

    Don't forget to consider the US threatening to change it's taxation laws so US multinationals will no longer have the benefit of our lower tax rate on IP as a reason to set up a division here.;)

    But, yeah, that makes me laugh considering it used to be all about needing science graduates. lol

    I think a lot of graduates at the moment would be willing to work for peanuts just to get the experience under their belts, I've certainly applied to WPP programs through fás. I think so far there's only been one work experience type placement that I didn't apply for (some of which were unpaid), and that was because their website was so atrocious that I'd be highly dubious of the merit of any experience or praises from them, their homepage has no links to the rest of the site, it was only by knowing the typical titles for pages that I was able to navigate by typing in the address bar. :eek:

    I have heard a few stories about people who got their degrees in CS but can't code worth a damn:confused:, so I can understand why folks would be wary of untested graduates. They need to keep in mind though that the reality is that if few companies are willing to run the graduates through the mill you end up with little fresh blood entering the field and so the companies are fighting over an ever diminishing number of experienced developers. This leads to a potential scenario where they need to recruit internationally for any position they have available, and at that point you're looking at making it worth a person's time to move here.
    That said though there are some highly experienced developers out there who's proficiency I'd find questionable, e.g. at my previous employer (I was an engineer as this was before I went back to college to study IT) they regularly suffered bugs in the software as between versions the developers would decide to arbitrarily change a variable name, between versions in one of the applications, without considering the other programs interacting with it (alas the new name almost never made better sense than the old one, and it wasn't due to them deciding to use the old name for something else either). The new names didn't even tend to make any more sense than the old ones did. At one point they'd decided to change what delimiter to use in data storage, making all old files useless and then in the next version changed it back to the old delimiter, once again causing set backs (and a brief bug hunt since they didn't remember they'd changed it back) due to files no longer working....:rolleyes:
    Yet these guys had no difficulty securing new jobs when the company went bust.


  • Registered Users, Registered Users 2 Posts: 40,038 ✭✭✭✭Sparks


    Reku wrote: »
    Yet these guys had no difficulty securing new jobs when the company went bust.
    To be expected when companies won't write accurate job descriptions, post sensible recruitment adverts, run proper interviews or do proper CPD...


  • Registered Users, Registered Users 2 Posts: 1,466 ✭✭✭Smoggy


    Reku wrote: »
    Yet these guys had no difficulty securing new jobs when the company went bust.

    I worked with a lad who spent half his day smoking (and thats no exaggeration), his lunch time drinking and the final hour of the day coding. As you can imagine the code was shocking and still years on the code is being located and rolled out.

    Before he was kicked (he worked here for 2 years), he jumped, but he is still doing the samething in his new roles (he just happens to work in companies current employees worked at). This lad has a shocking name and the Dublin market is small enough that his name should proceed him, but all I can imagine is that employees are happy to get any Dev with 10+ years "experience" how ever poor they maybe.


  • Registered Users, Registered Users 2 Posts: 40,038 ✭✭✭✭Sparks




  • Advertisement
  • Registered Users, Registered Users 2 Posts: 1,922 ✭✭✭fergalr


    Sparks wrote: »

    In response to that post, which is on this topic:

    The IEI (or Engineers Ireland?) don't seem to have huge relevancy to the Irish software industry.

    I was a member for a while, but I left because I was getting nothing out of it. It does seem like a good organisation, just not so relevant to the software engineers here.

    One big thing they seem to do is dispense/manage C.Eng professional titles. These aren't as big a deal in software engineering as in other forms - in fact, I'm not sure I've ever heard of someone looking for a C.Eng when hiring a developer - maybe if they were working on code in aerospace, or life critical sectors its different?

    Anyway, while there might be advantages to getting a C. Eng. one day, most of the IEI infrastructure didn't seem geared towards facilitating software people towards that goal.
    I looked at their CPD courses, but I was pretty sceptical about how much value they would hold for me. I didn't see any course on X that made me think both 'I should learn X' and 'This is a very efficient way for me to learn X'.

    So, if you are talking about continuous professional development, in general, I wholeheartedly agree that employers should support their staff doing it. But that's not the same thing as doing EI approved CPD courses, which may or may not be useful.

    There's also something about the EI CPD / C.Eng. setup that puts me off it.
    One thing is that "A list of companies accredited for Continuing
    Professional Development (CPD) by Engineers Ireland in this respect is provided on our website." In other words, companies must be accredited to provide CPD, for later recognition.
    And another is that an application for C.Eng. must be endorsed by two existing members.

    When I see such conditions on any sort of membership of an organisation, it raises questions for me.
    Surely a candidate should be allowed show that they had sufficient extra CPD training, and justify the specific courses they decided to do, even if the courses are not approved? From what I've read - and I dont know a lot about this - it seems that 'CPD' must be a specific set of approved course, from an approved set of companies.

    These are not the kind of rules I'd have expected. Surely it should be possible to just assess candidates on merit and experience, rather than on where they worked and whether they know two existing members?


    I have to wonder how much of the recognised CPD is just being done because its a necessary step before attaining a professional title people want, as opposed to because they genuinely want the training. I suspect a large part of the reason companies and other engineering disciplines are good about CPD is that its a necessary pre-requisite to a desired professional title, as opposed to just on its own merits. Now I'm not saying thats the case for sure - just that its something that occurs to me.


    On a separate, but related, point, in some sense software eng is a little different than the other engineering fields traditionally are. Developers move around more, and there's less of a 'job for life' mentality. Also, the tools and tech used changes very fast. The way we build software changes from year to year - much more so, I think, than the way we build bridges.

    I think as a result of these two factors, the responsibility has tended to lie with the individual, and not the company, to continually improve professionally. Essentially, if you aren't doing CPD on your own time as a developer, you are losing ground to everyone else who is. A lot of software developers I know - and I'd include myself here - put a huge price on working for companies where their skills might go stale, and a huge premium on the ability to learn newer and better ways to do things.


    So, definitely, tech companies should encourage their developers to CPD more. And it'd be great if tech companies and EI somehow sorted out proper useful CPD for software people. But even if that doesn't happen, a lot of people are doing a lot of learning on their own time and dime anyway - and structuring their careers around it.


    Also - you mention 'Peopleware' in your post - great book.


  • Registered Users, Registered Users 2 Posts: 40,038 ✭✭✭✭Sparks


    I think you'd find the IEI's C.Eng program is a bit more involved than a once-off exam; you're meant to undertake a course of CPD studies and be mentored by an accredited mentor for this, and after that, there's an exam. The thing is that the C.Eng has huge support in civil and mech. engineering, to the point where getting it means a raise; but it has next to no support in software engineering, and like I said, I can't help but think that that's at least in part attributable to this whole 'cult of the rockstar programmer' thing. You get buffoons like David Hansson putting up 'f*** you' as a slide in a conference, you get Joel Spolsky posting utter tripe about best practices, and all of it is about getting noticed, being the guy talked about in the field. Because while we know that there's a large productivity gap between the best and the median in our field, we have no way to tell where on that spectrum a programmer falls.

    So if the best get a massive financial and professional boost for being the best; but we have no good way to objectively identify who the best people are (other than "wait ten years, see what they build"); then you can be sure that every snake oil salesman out there is going to be pushing the tabloid sensationalism buttons to try to get talked about because that's the only metric we have - how much gossip is there about you.

    For example, I say "DHH" and people think "37signals" or "Rails". Mainly because he acts the unprofessional eejit in public and picks fights wherever he can, to boost his image and therefore increase his odds of professional success.

    It's an appalling system - and it's why CPD and the accreditation that goes along with it are so vital (ie. I'm not just meandering from topic to topic here). If you have an objective, supervised, real-world assessment of professional abilities, you can dispense with the 12-year-old's way of deciding who the best people are. That's what Civil and Mech. engineering did quite a while back, and it's where we'll end up going, we just aren't there yet because there's about 126 years of a gap between civil engineering and software engineering.

    But it's something the IEI and the SME IT sector really ought to be helping along, because they're the ones with the most to gain, financially speaking.


  • Registered Users, Registered Users 2 Posts: 7,468 ✭✭✭Evil Phil


    The ICS do have a CPD program of sorts although I'm not a member so I can't comment. I am a member of the BCS and they've a very good CPD program.


  • Registered Users, Registered Users 2 Posts: 40,038 ✭✭✭✭Sparks


    fergalr wrote: »
    On a separate, but related, point, in some sense software eng is a little different than the other engineering fields traditionally are. Developers move around more, and there's less of a 'job for life' mentality. Also, the tools and tech used changes very fast. The way we build software changes from year to year - much more so, I think, than the way we build bridges.
    See, I don't buy that mindset.
    Yes, there's a difference between civil and software engineering, but what would you expect when one has a 126-year headstart on the other?
    And yes, we move around more, but (a) that's true of everyone these days, the move away from "job for life" has been a social phenomenon, it wasn't just restricted to IT; and (b) there are enormous parallels between software engineering today and mechanical engineering a century ago. All this talk of how we'll never be a real engineering discipline, how we're too different, too fast-moving - it's not new, it's around a hundred years old. It was said when mech.eng started up out of steam engines, and it was said when electrical engineering started up out of natural philosophy experimentation with magnetics, and I have no doubt it'll be said again when the next thing comes along.

    What takes us from art to science to engineering is nothing to do with the actual subject matter, and everything to do with how critical it is to society and how much it's depended on. When society decides that it needs trains to be a bit more reliable, or bridges to not fall down, then something that was a lot less rigorous winds up being pushed into being an engineering discipline. And given the dramatic improvements you usually see once the more personality-driven approaches are retired, that's not a bad thing (it's not just how engineering got started, btw, it's how all the professions got started. Once you get to the point where society judges your work to be too important and critical to be playing about with, rigour and regulation and accreditation and so forth all show up in a hurry).
    a lot of people are doing a lot of learning on their own time and dime anyway - and structuring their careers around it.
    Sure, now. You're what, early twenties?
    What happens when you're in your late twenties/early thirties and have kids and a family to worry about? Do you say "well, can't have a career and kids" or do you remember that this isn't a question that even arises in most engineering fields because not everyone is caught up in a madcap scramble to look good to the boss (who doesn't know enough to judge anyway) compared to the latest crowd of coders who're in their early 20s and will happily spout bull to that boss on how they can do all that you do, but better in a new language that's been out for around three months, and for far less salary?

    The whole "judge the best by the amount of gossip" approach only works well for those who have no life outside of their career - and I mean no life at all. People whose social circles never extend past other programmers, whose idea of a great holiday is three days in a mid-level hotel in the back end of brussels at a conference on yet another web framework, and who get wound up arguing over whether HTML5 really was a superior approach than XHTML2 would have been. People can't live their entire lives like that. Sooner or later, the teenagers become the twenty-somethings, who then go on to become parents and by that point, the lifestyles are utterly incompatible with the demands on those trying to live them.

    It's just not a humane way to live.


  • Registered Users, Registered Users 2 Posts: 6,980 ✭✭✭wyrn


    Sorry to barge in here but I found this discussion fascinating.

    First off I'm not in the IT sector. There was a time when I was a wannabe programmer (I blame the movie Hackers!). When I did my degree (Science) we learned QBasic and C++ and that was fine. It was rushed through and there was plenty of help from the postgrads/lecturers to help modify code for whatever reason. We learned the basics and what we needed to learn, sort of learning verbs and how to conjugate them and being told off you go. Which was fine. However some people took to programming like a duck to water (sadly I was not one of those people).

    Anywho when I finished I realised that science is a tricky career to flog to a HR person. Also on most websites you can either apply for the Engineering or IT section. I sort of fell between the two. I agree with previous posters about jobs descriptions being made by HR are misleading. Also I was applying for "Graduate" positions when x years experience required. It was extremely frustrating to say the least.

    Fortunately I was able to go back and take up computer science. I thought this would enhance my chances of getting a job and finally being able to programme. I did well and out I came with a bit of everything under my belt (Java, C, SQL, PHP etc...) and off on the job hunt I went. It wasn't going well and thankfully something else popped up.

    Anyway my longly awaited point is I think the Universities/Colleges need to change tactics. From what I can gather back in the day programme (before we knew what IT was) was seen as a "nerdy" thing. Students would write their own programs and code. Then along came the college courses and IT was taught and before long we'd HTML, Networks, Hardware, Software etc... lots and lots of choice and lots and lots of courses to do. So invariably students stopped writing codes to do x,y and z (because someone else had it up on SourceForge.net) and became bogged down in a multidisciplinary IT area.

    There's a few routes that you can go down with Computer Science. I think a distinction needs to be made (languages, databases etc...) and people study and PRACTICE this for at least two years. Specify after 1st/2nd year and stick to it. I think there's so much emphasis on learning the history or background and writing an essay or some small program in a lab isn't useful in the real world. I think computer science students need to be pushed to make a portfolio of their own programs just like artists so that when they go for an interview they have something to show for themselves AND it shows that they are interested in this area.

    Basically I think if universities made computer science separate out into more distinct areas such as programming and had more of an emphasis on writing lots and lots of creative, imaginative, legible and elegant code then we'd be heading in the right direction.

    My two cents from a non-existent, ex-wannabe programmer!


  • Registered Users, Registered Users 2 Posts: 1,922 ✭✭✭fergalr


    Sparks wrote: »
    I think you'd find the IEI's C.Eng program is a bit more involved than a once-off exam; you're meant to undertake a course of CPD studies and be mentored by an accredited mentor for this, and after that, there's an exam.
    The thing is that the C.Eng has huge support in civil and mech. engineering, to the point where getting it means a raise;
    Yes, but that's sort of what I'm getting at.
    If there's a qualification that means a raise, and a set of hoops to jump through to get it (a set of courses to sit, companies to work for, someone you need to mentor you) - then people will jump through those hoops - regardless of whether said courses, companies and mentoring are in fact the best 'CPD' for them.

    Sparks wrote: »
    but it has next to no support in software engineering, and like I said, I can't help but think that that's at least in part attributable to this whole 'cult of the rockstar programmer' thing. You get buffoons like David Hansson putting up 'f*** you' as a slide in a conference, you get Joel Spolsky posting utter tripe about best practices, and all of it is about getting noticed, being the guy talked about in the field.
    As an aside, I think Spolsky writes a lot of interesting good stuff. I don't at all agree with everything he says - sometimes I think he's writing rubbish - but sometimes he's excellent.

    Sparks wrote: »
    Because while we know that there's a large productivity gap between the best and the median in our field, we have no way to tell where on that spectrum a programmer falls.
    I'm surprised to read this - you really reckon that's true? I'm actually of almost the opposite opinion to this.

    I'm fairly firmly of the opinion that I could put most people in the roughly the right part of the spectrum after having a 20 minute interview/chat with them. I find that if you drill down and start asking people technical questions, you get a pretty good sense of what level they are at fairly fast.

    Now, you did say productivity - I can't of course tell if they will actually do anything when they come into work, and have to rely on their references for that - but overall I would have thought that software was one of the fields where it was actually easier to figure out roughly how good someone was?
    Plus, I can get the candidate to talk me through their previous projects, show me samples of their work, have them work through a software problem etc - I think these things are particularly easy to do in software.

    What's your take on this - you mean something more specific?
    Sparks wrote: »
    So if the best get a massive financial and professional boost for being the best; but we have no good way to objectively identify who the best people are (other than "wait ten years, see what they build"); then you can be sure that every snake oil salesman out there is going to be pushing the tabloid sensationalism buttons to try to get talked about because that's the only metric we have - how much gossip is there about you.
    Are you talking about the best software engineering methodology salesmen here, or the best individual developers?
    Again, whatever about during an interview, if I work on a project with another software person, it absolutely won't take me the aforementioned 'wait ten years, see what they build'. I'd expect to have an extremely good idea of their productivity after a month - no?

    Sparks wrote: »
    For example, I say "DHH" and people think "37signals" or "Rails". Mainly because he acts the unprofessional eejit in public and picks fights wherever he can, to boost his image and therefore increase his odds of professional success.

    It's an appalling system - and it's why CPD and the accreditation that goes along with it are so vital (ie. I'm not just meandering from topic to topic here). If you have an objective, supervised, real-world assessment of professional abilities, you can dispense with the 12-year-old's way of deciding who the best people are.
    But the C.Eng. accreditation is something someone either has or doesn't, right? How does this really help you place them on the spectrum? Are you telling me you don't think there are any unproductive/idiot chartered engineers out there?

    I'll put it to you like this - I can't think of any qualification - certainly including C.Eng. - that I would trust in hiring a software candidate over and above the assessment I'd make interviewing them for 30 minutes.
    Would you disagree with this? Would you hold C.Eng. (or another similar qualification) in such esteem?

    I really have met or seen people with all sorts of wonderful qualifications (phds, professors, highly successful CEOs, mds, solicitors, C.Engs) that honestly were not that good at what they were supposed to be good at.
    Am I too jaded here?
    Sparks wrote: »
    That's what Civil and Mech. engineering did quite a while back, and it's where we'll end up going, we just aren't there yet because there's about 126 years of a gap between civil engineering and software engineering.

    You're focusing in on calendar years here - I'm not sure it makes sense to look at the length of time a discipline has been around, and use that as an important figure to reason about.
    The total number of person hours spend in that discipline, the size and scale of its application globally, etc are important too?

    Sparks wrote: »
    But it's something the IEI and the SME IT sector really ought to be helping along, because they're the ones with the most to gain, financially speaking.


  • Advertisement
  • Registered Users, Registered Users 2 Posts: 1,922 ✭✭✭fergalr


    Sparks wrote: »
    See, I don't buy that mindset.
    Yes, there's a difference between civil and software engineering, but what would you expect when one has a 126-year headstart on the other?
    And yes, we move around more, but (a) that's true of everyone these days, the move away from "job for life" has been a social phenomenon, it wasn't just restricted to IT;
    True, it is not restricted to IT - but I'd say that IT was perhaps the poster child of the change, and that its very much part of the IT culture.
    Sparks wrote: »
    and (b) there are enormous parallels between software engineering today and mechanical engineering a century ago. All this talk of how we'll never be a real engineering discipline, how we're too different, too fast-moving - it's not new, it's around a hundred years old. It was said when mech.eng started up out of steam engines, and it was said when electrical engineering started up out of natural philosophy experimentation with magnetics, and I have no doubt it'll be said again when the next thing comes along.
    That's a very interesting observation - I'm not familiar with the history of mech eng. (did vanilla CS).
    Sparks wrote: »
    What takes us from art to science to engineering is nothing to do with the actual subject matter, and everything to do with how critical it is to society and how much it's depended on.
    That statement is a very extreme position.
    ( Here I present Exhibit A: Economics. )

    But in general, I agree with what you are saying here.
    Sparks wrote: »
    When society decides that it needs trains to be a bit more reliable, or bridges to not fall down, then something that was a lot less rigorous winds up being pushed into being an engineering discipline. And given the dramatic improvements you usually see once the more personality-driven approaches are retired, that's not a bad thing (it's not just how engineering got started, btw, it's how all the professions got started. Once you get to the point where society judges your work to be too important and critical to be playing about with, rigour and regulation and accreditation and so forth all show up in a hurry).

    I think we already know (mostly) how to write reliable software, and develop reliable software systems, when the cost of failure is high. Aerospace is pretty good at that.

    What we can't do is produce them cheaply - or at a price people would pay.
    When non-software people asked me why their Windows 95 crashes, I often asked them if they'd pay 5k for a version that doesn't, and the answer was 'no'. (Now a days they can just buy a mac - but surprisingly, the answer is often still 'no'.)

    A lot of the reason that consumer software is not written in the hardcore engineering way that NASAs software is is that the market - or society - just won't pay the cost of development. They are happy with the current tradeoff.
    I don't think software engineering will change in the way you describe until this economic balance changes - and that may or may not change.

    I don't think its necessarily just a question of time.
    Certainly, time could change it - if in the future cascading failures show up in the interweb, and take us offline regularly for a few weeks - or there are 'cyberwar' events etc. society and business will probably be forced to revise this stance.

    So, mostly I'm agreeing with you here. I think a lot of the driving forces are external to the field of software. But I do think that if society decides it needs more reliable software, software will get seriously more expensive to produce.
    I don't buy the standard academic software engineering argument that all these companies are just doing it wrong and aren't saving themselves the megabucks they could be, if only they followed methodology X. The companies do *a lot* of stuff wrong, but they are striking a balance between cost and quality, and they are doing a much better job than many software engineering 'gurus' would admit (not necessarily a 'good' job - but not as bad as it seems when you consider the thing holisticly).
    Sparks wrote: »
    a lot of people are doing a lot of learning on their own time and dime anyway - and structuring their careers around it.

    Sure, now. You're what, early twenties?
    Quite late 20s now, actually (eek!).
    And back in college, studying for a PhD, choosing learning more over moneh, for better or worse... ...learning an awful lot more, though...
    Sparks wrote: »
    What happens when you're in your late twenties/early thirties and have kids and a family to worry about?
    Yeah - its a very relevant question. Work/life unsustainablity may be partly the reason I didn't follow a career in the games industry, which I used to be interested in (among many things). Not that doing a PhD is easy going either, though...


    I phrased that particular 'time and dime' sentence badly.
    I wasn't intending to say that people should be spending all their weekends or holidays attending conferences, to learn more.

    I guess I'm trying to get at the idea that people can, and do, move between jobs, and choose career paths that expose them to new technologies and new skills, and ideally would continue to do this, even if they have commitments.
    When confronted with two jobs, one which pays a bit better, and the other thats more interesting in terms of learning new skills, I'll almost always take the more interesting one, and I think a lot of people do that, and so continue to learn while working.
    In addition to that, I do think most tech people can and should be reading around within their fields. Maybe this happens when they read someones software engineering blog during their lunchbreak, or the podcasts they listen to when going for a run, or whatever.

    I do agree though - and said it in my earlier post - that employers should facilitate continuous learning. And some really do - often the exploratory phase after a project is completed, or a milestone is hit, when trying to design the next piece of work serves to allow people to go and learn about new technologies in order to best investigate how to solve the next problem. You can't do that if you are in a company that's constantly behind schedule, and constantly firefighting - but thats really a whole other set of problems.

    Sparks wrote: »
    Do you say "well, can't have a career and kids" or do you remember that this isn't a question that even arises in most engineering fields because not everyone is caught up in a madcap scramble to look good to the boss (who doesn't know enough to judge anyway) compared to the latest crowd of coders who're in their early 20s and will happily spout bull to that boss on how they can do all that you do, but better in a new language that's been out for around three months, and for far less salary?

    There are plenty of toxic companies out there, sure, where the workers are essentially setup to try and out compete each other, younger workers used to pressure older workers etc - and everything suffers as a result. Hopefully I'll be able to try and not work for them- but yes, we should have less of them if we can.

    Sparks wrote: »
    The whole "judge the best by the amount of gossip" approach only works well for those who have no life outside of their career - and I mean no life at all. People whose social circles never extend past other programmers, whose idea of a great holiday is three days in a mid-level hotel in the back end of brussels at a conference on yet another web framework, and who get wound up arguing over whether HTML5 really was a superior approach than XHTML2 would have been. People can't live their entire lives like that. Sooner or later, the teenagers become the twenty-somethings, who then go on to become parents and by that point, the lifestyles are utterly incompatible with the demands on those trying to live them.

    It's just not a humane way to live.

    Yeah, there are a lot of people working in bad companies and bad conditions. I'm not sure its a particular problem in the software field, in general, though (certain sections, notably the games industry, aside)?

    There seem to be plenty of companies around that are smarter about these things too? I think the quality of life is much higher in software companies, than, say, accountancy firms, or law firms, or most of the other similar office jobs? And some software companies are very enlightened too.

    Hey, aren't we discussing this skills shortage, that's going to lead to more respect for the more experienced devs anyway?


  • Registered Users, Registered Users 2 Posts: 1,922 ✭✭✭fergalr


    wyrn wrote: »
    Sorry to barge in here but I found this discussion fascinating.

    First off I'm not in the IT sector. There was a time when I was a wannabe programmer (I blame the movie Hackers!).
    A very respectable start.
    wyrn wrote: »
    [...]
    There's a few routes that you can go down with Computer Science. I think a distinction needs to be made (languages, databases etc...) and people study and PRACTICE this for at least two years. Specify after 1st/2nd year and stick to it.
    http://www.youtube.com/watch?v=WWaLxFIVX1s

    wyrn wrote: »
    I think there's so much emphasis on learning the history or background and writing an essay or some small program in a lab isn't useful in the real world. I think computer science students need to be pushed to make a portfolio of their own programs just like artists so that when they go for an interview they have something to show for themselves AND it shows that they are interested in this area.
    Work portfolios are good - college projects are a great way to build them. Final Year Project is generally enough in its own right to talk about at an interview...
    wyrn wrote: »
    Basically I think if universities made computer science separate out into more distinct areas such as programming and had more of an emphasis on writing lots and lots of creative, imaginative, legible and elegant code then we'd be heading in the right direction.

    My two cents from a non-existent, ex-wannabe programmer!
    I really don't agree with this perspective.
    I think undergrad CS should be much more like maths. Ideally with some physics fundamentals thrown in. And much more theoretical computer science, and much less hardware.

    Maybe a course or two on all the technologies and tools du jour - but nothing more than that. It just changes so fast, that if you tech people Ruby on Rails in college, by they time they graduate everything they'll have learned will be outdated, and they won't know enough fundamentals to learn the new stuff.


  • Registered Users, Registered Users 2 Posts: 40,038 ✭✭✭✭Sparks


    fergalr wrote: »
    Yes, but that's sort of what I'm getting at.
    If there's a qualification that means a raise, and a set of hoops to jump through to get it (a set of courses to sit, companies to work for, someone you need to mentor you) - then people will jump through those hoops - regardless of whether said courses, companies and mentoring are in fact the best 'CPD' for them.
    Except that it's not just a case of doing CPD - that study I mentioned in my blog post was talking about assessment of the CPD, in terms of what it contributed to the business. Once you start measuring that, once there's a report going to the CEO saying "Jimmy did a Course X so our profits rose by Y this year", then the question of 'best CPD' is a self-solving one. It's not intractable at all - we just aren't measuring it yet. Others are, it's far from impossible.
    As an aside, I think Spolsky writes a lot of interesting good stuff.
    Oh, there's a whole other thread in that one ;)
    I'm surprised to read this - you really reckon that's true? I'm actually of almost the opposite opinion to this.
    I'm 100% of that opinion, I've seen too many good programmers (people I'd seen working for months) blow an interview on a bad day; and faaaaar too many idiots BS past an interviewer. You can catch the latter with coding tests, but you can lose the former that way as well. And unless you do something like open-source projects as a kind of portfolio, NDAs keep your work away from the eyes of interviewers. I know it's tempting to think that 20 minutes of a chat is enough time to spot a BS artist but it really isn't - I've learnt that the hard way. You can filter out the worst cases, but the ones who get past you are just good enough to do real damage.
    Plus, I can get the candidate to talk me through their previous projects, show me samples of their work
    How do you get past the NDAs? How do you find out how well they work with others, how well they use the workflow tools (hg, trac, etc), and so on? Most of the things that make the difference between a team and a bunch of people sitting in the same room are things you can't spot fast or are specifically prohibited from asking about.
    Are you talking about the best software engineering methodology salesmen here, or the best individual developers?
    Best developers, but the former's true as well.
    Again, whatever about during an interview, if I work on a project with another software person, it absolutely won't take me the aforementioned 'wait ten years, see what they build'. I'd expect to have an extremely good idea of their productivity after a month - no?
    Under stress, maybe (two months is better, and they push that out to six months for management for some reason) - but now what? Unless you have a probationary period (a good idea) you're stuck and even if you have, it may not matter - you're down time and money and tempo and if you drop them and rehire, you risk falling behind deadlines. And since writing a bad reference in this country is a fast way to get sued, you can't even warn someone about someone - and unVarnished isn't a solution to be frank, because I've worked for places where I wouldn't be shocked to find they lied in my reference or did other nefarious things out of spite.
    In other words, it's not very simple.
    But on the upside, other engineering branches have been doing this for longer, and have solved these problems already (these aren't software problems, they're people problems).
    But the C.Eng. accreditation is something someone either has or doesn't, right? How does this really help you place them on the spectrum? Are you telling me you don't think there are any unproductive/idiot chartered engineers out there?
    I won't say no, but since that's the scenario that it's specifically set up to avoid, and since their existence devalues an accreditation that's worth a lot of money to all parties involved, I'd say you're looking at a very low p-value there :D
    I'll put it to you like this - I can't think of any qualification - certainly including C.Eng. - that I would trust in hiring a software candidate over and above the assessment I'd make interviewing them for 30 minutes.
    Would you disagree with this?
    Yes. Not just from experience, but because it would set off all my "your ego is BSing you again" alarms :D
    Am I too jaded here?
    No such thing :D But those qualifications you listed (bar the C.Eng) are not down to merit or mentoring...
    You're focusing in on calendar years here - I'm not sure it makes sense to look at the length of time a discipline has been around, and use that as an important figure to reason about.
    The total number of person hours spend in that discipline, the size and scale of its application globally, etc are important too?
    Important, yes, but skewed. For a start, at our rate of population growth, there's no way something a hundred years ago can ever compete in manhours; but that doesn't mean we can compress 100 years of progress into 1 year :D
    Perhaps more useful is counting time in generations. It usually takes a minimum of one generation to truly change work practices, so that seems a good idea as a rough rule of thumb. Taking that, and allowing for some influence from manhours and greater communications ability, I'd say we're definitely not as far behind civil as the 126 calendar years suggest - but we're definitely not caught up with them either. Give us another forty or fifty years, maybe less. I reckon we'll see it in our working lives.


  • Registered Users, Registered Users 2 Posts: 40,038 ✭✭✭✭Sparks


    fergalr wrote: »
    True, it is not restricted to IT - but I'd say that IT was perhaps the poster child of the change, and that its very much part of the IT culture.
    It's definitely part of some parts of the IT sector - but others are far less ephemeral. I think we base too much of our mental model of the sector on the tiny but vocal part of it that the web represents. For example, the largest deployed codebases out there right now are not web-based stuff or windows-based stuff, they're not even the cobol code in financial houses; the largest codebase is in embedded systems and most of those are thirty-year old chips that have been in active use all that time.
    And the guys in the financial houses could tell you that they don't go changing job every six months (well, up until lehmann brothers anyway).
    That's a very interesting observation - I'm not familiar with the history of mech eng. (did vanilla CS).
    Well, we're at the stage Mech Eng was at back when cars were first coming out. Look at the model T sometime - heralded as the greatest innovation in manufacturing, but the user interface was appalingly bad and starting it could kill you (the starter handle could swing out of your hand when the engine caught, and the engine would then drive it round and into your head, most people dying a few days later from sepsis from badly broken facial bones - it's why the starter motor was invented). We're all looking at trying to build a Ford factory or an Edison invention factory at the moment; but history didn't stop with Ford or Edison, and sooner or later we're going to get past that stage and keep on progressing. It's just amusing to see the parallels (for example, Edison ridiculed electrical engineering degrees, which were just starting up at that time as being an attempt to teach the unteachable, same as some folks today say that you don't need a CS degree to work in IT -- Tesla was one of the first graduates of those programmes Edison would have encountered, and we all know what kind of current is in our wall sockets today)
    That statement is a very extreme position.
    Well, yes, but point out a profession it's not true of (and Economics isn't a profession, it's an academic study and while it's important to society in an abstract sense, you don't see an economist's work directly in your day to day life the way you see a bridge or clothing or your car or a building or electric lighting or a doctor or a lawyer).
    I think we already know (mostly) how to write reliable software, and develop reliable software systems, when the cost of failure is high.
    comp.risks disagrees, with examples, every fortnight for the last decade or so...
    Aerospace is pretty good at that.
    Er, no, it's really not. NASA's human-rated stuff is famous, but not representative. Ariane 5, Genesis, Mars Polar Observatory, the Reaper control software, Airbus's control software - all of them have shown that aerospace software is as flawed as the rest of our software.
    I don't think software engineering will change in the way you describe until this economic balance changes - and that may or may not change.
    Actually, I think it won't be the economic balance that triggers it - I think it's going to be a mix of the iPad and lawyers.
    By which I mean that when people start thinking of computer systems as appliances (which is what the iPad is designed as -- and others too but the iPad's the best current example in the market) and not as big, complicated computers that are all mysterious and sometimes just crash (and which they'll accept) - well, that's when they start looking for decent warranties and start suing for damages. So when your GPS turns you into oncoming traffic on a one-way street and you reach for the solicitor's number after you wake up in intensive care - that is the turning point. And embedded developers are starting to worry over that point a lot of late.
    if in the future ... there are 'cyberwar' events etc. society and business will probably be forced to revise this stance
    I'd say that this is the first step on that road myself.
    I do think that if society decides it needs more reliable software, software will get seriously more expensive to produce.
    I don't doubt it - but on the other hand, it'll become cheaper in some ways.
    For example, today a civil engineer could get a church designed and built in a matter of months for not too much money - two hundred years ago, it would have taken years and most of the resources of the town it was being built in. So normal buildings have gotten much much much much cheaper and faster to build and safer.
    But Cathedrals, which used to be the work of entire lifetimes in several generations and which represented mind-boggling sums of money... well, we haven't actually got the setup to build those at all anymore, not the way they used to be built. Building a sydney opera house we can do, but finding enough talent to carve stone in situ and that kind of detail work, that's not really possible anymore. We've gone from the point where everything's handmade (and hugely expensive) to where a subset of everything is standardised (and cheap enough for all to have them) but the rest isn't made at all anymore.

    I think that's the model we're going towards. We may well see a large falloff in startups, but a corresponding increase in standardisation. If we're lucky, we might finally convince a few developers to stop reinventing the bloody wheel while we're at it :D
    I don't buy the standard academic software engineering argument that all these companies are just doing it wrong and aren't saving themselves the megabucks they could be, if only they followed methodology X.
    That's not just academia though, it's a lot of the companies as well - all the agile subsets, all the nosql stuff we're seeing today, all the pro-object oriented stuff we saw ten years ago... this isn't a new thing, it's our process!
    Quite late 20s now, actually (eek!).
    Not long left now my friend ;)
    Yeah - its a very relevant question. Work/life unsustainablity may be partly the reason I didn't follow a career in the games industry, which I used to be interested in (among many things). Not that doing a PhD is easy going either, though...
    Nope, and the PhD is an interesting one because it's really only useful if you're headed for R&D (and I say that as someone with half a thesis sitting in his /home ...)
    When confronted with two jobs, one which pays a bit better, and the other thats more interesting in terms of learning new skills, I'll almost always take the more interesting one, and I think a lot of people do that, and so continue to learn while working.
    I know I always used to do that. Today, I'm looking at the €4500 each of us has to now pay per annum to pay for the interest on the nama loans and wondering if that's an option anymore when the cost of raising children and morgages have to be dealt with as well.
    Maybe that's a perennial question, and maybe that's why most engineers leave technical work for management within a decade or two of graduation...
    In addition to that, I do think most tech people can and should be reading around within their fields.
    Maybe they should; but as Peopleware pointed out, they don't.
    There are plenty of toxic companies out there, sure, where the workers are essentially setup to try and out compete each other, younger workers used to pressure older workers etc - and everything suffers as a result. Hopefully I'll be able to try and not work for them- but yes, we should have less of them if we can.
    That would be a bloody good thing - but I worry that there's not just more of them than you're thinking, but more that even I'm worrying there are!
    I'm not sure its a particular problem in the software field, in general, though (certain sections, notably the games industry, aside)?
    In general? I'm not sure, we're a bloody large sector. But the games field, the small web companies, those are absolutely plagued by this.
    There seem to be plenty of companies around that are smarter about these things too? I think the quality of life is much higher in software companies, than, say, accountancy firms, or law firms, or most of the other similar office jobs? And some software companies are very enlightened too.
    I wish I could say I'd encountered enough to be happy about that, but even the best places I've been in weren't consistently good - they'd be great in one area, for a while, then make up for it elsewhere :(
    Hey, aren't we discussing this skills shortage, that's going to lead to more respect for the more experienced devs anyway?
    *hehe*
    I wish. Some folks think it makes more business sense to hire new graduates fresh from finals, who don't know enough to demand decent conditions or to say no to unreasonable demands (or even enough to recognise either of those), work them like dogs for 11 months (not a year, because that's when permanency sets in), then fire them on a pretext and get in new graduates, all the while churning out code that looks like the worst stereotypical example of code from India or China. And those folk aren't going out of business...


  • Registered Users, Registered Users 2 Posts: 1,922 ✭✭✭fergalr


    Sparks wrote: »
    Except that it's not just a case of doing CPD - that study I mentioned in my blog post was talking about assessment of the CPD, in terms of what it contributed to the business. Once you start measuring that, once there's a report going to the CEO saying "Jimmy did a Course X so our profits rose by Y this year", then the question of 'best CPD' is a self-solving one. It's not intractable at all - we just aren't measuring it yet. Others are, it's far from impossible.

    I dunno - I followed that link to the IEI article, and I couldn't find anything convincing in it. Maybe if I tracked down and read the articles it was talking about in turn - dont have the time at the mo - but most of the claims it seemed to quote were just correlations.
    I'm totally willing to believe there's a correlation between companies supporting CPD and companies that perform well and have good staff - but I'd be extremely sceptical of anyone claiming to produce a report saying 'Jimmy did course X, our profits rose Y'. I believe its very difficult to measure these things... selection biases, whats an adequate control, the Hawthorne effect, etc.
    Even figuring out a single employees baseline contribution to the company's profit, in an engeering discipline, is a very hard thing to do. (Easier if they are in sales.)
    Sparks wrote: »
    Oh, there's a whole other thread in that one ;) I'm 100% of that opinion, I've seen too many good programmers (people I'd seen working for months) blow an interview on a bad day; and faaaaar too many idiots BS past an interviewer.
    Yes, I've seen good programmers have a bad interview day too, absolutely.

    But, while I've also seen idiots BS their way by less technical managers, I think it's pretty hard to BS past someone that's technically skilled and is conducting a thorough technical interview.
    Like, if I ask someone to explain to me how binary search works, and they are chancing their arm, I'm going to know pretty fast. I'll be patient, and encouraging, and not look for quick answers, but at the end of the day, if I drill down enough to the technical topics I'll start to get a good sense the persons overall level.
    I may not be able to tell a super good developer from just a good one, but I'd hope to be able to tell who has copied their CV from the internets.
    Sparks wrote: »
    You can catch the latter with coding tests, but you can lose the former that way as well. And unless you do something like open-source projects as a kind of portfolio, NDAs keep your work away from the eyes of interviewers. I know it's tempting to think that 20 minutes of a chat is enough time to spot a BS artist but it really isn't - I've learnt that the hard way. You can filter out the worst cases, but the ones who get past you are just good enough to do real damage.

    Maybe there's a category of excellent technical BS'r out there, that have a good understanding of core CS concepts, that I haven't met yet. But if they are that good, surely the company can find a use for them in sales?!

    If you could describe about situations in which such a BS artist fooled you, how they fooled you, and what sort of damage they went on to do, then that'd make a really interesting blog post...
    Sparks wrote: »
    How do you get past the NDAs? How do you find out how well they work with others, how well they use the workflow tools (hg, trac, etc), and so on? Most of the things that make the difference between a team and a bunch of people sitting in the same room are things you can't spot fast or are specifically prohibited from asking about.
    You are right about the NDAs - I've been a candidate before and had to tell people that I couldn't talk about certain projects in more detail, because of NDA concerns.
    People generally put something on their CV. The important thing I find is just to have a conversation with them, and drill way down - ask them to name one technical area they really understand, and then get them to explain exactly how it works, and keep asking more detailed questions - in the discussion, you learn a lot.
    Ask them how they write code. Can they even have a conversation on developer productivity? What tools would they use, if they were restructuring the team? You don't need to ask them to break NDAs to find the answers to those questions.
    Sparks wrote: »
    Best developers, but the former's true as well.
    Under stress, maybe (two months is better, and they push that out to six months for management for some reason) - but now what? Unless you have a probationary period (a good idea) you're stuck and even if you have, it may not matter - you're down time and money and tempo and if you drop them and rehire, you risk falling behind deadlines. And since writing a bad reference in this country is a fast way to get sued, you can't even warn someone about someone - and unVarnished isn't a solution to be frank, because I've worked for places where I wouldn't be shocked to find they lied in my reference or did other nefarious things out of spite.
    In other words, it's not very simple.
    But on the upside, other engineering branches have been doing this for longer, and have solved these problems already (these aren't software problems, they're people problems).
    I think you are putting too much faith in how well other engineering branches solve these people problems. I may be wrong. Next time I'm hanging out with a bunch of civil/mech engineers, I'm going to have a chat with them about this sort of thing.
    Sparks wrote: »
    I won't say no, but since that's the scenario that it's specifically set up to avoid, and since their existence devalues an accreditation that's worth a lot of money to all parties involved, I'd say you're looking at a very low p-value there :D

    Yes. Not just from experience, but because it would set off all my "your ego is BSing you again" alarms :D No such thing :D But those qualifications you listed (bar the C.Eng) are not down to merit or mentoring...
    Really?
    Surely something like a PhD is supposed to have a large chunk of both (peer-appraised) merit and mentoring? And solicitors must pass exams, and have a mentoring period too? Same with medical doctors, etc.

    I have to say, your faith in the C.Eng. qualification makes me wonder if I've underestimated it. I don't know though, I've met some C.Engs that were fine at what they did, but you know, they do their job, they've gone through the training, but if they were software people, they wouldn't be what you'd consider the really good ones. Hmm... food for thought.
    Sparks wrote: »
    Important, yes, but skewed. For a start, at our rate of population growth, there's no way something a hundred years ago can ever compete in manhours; but that doesn't mean we can compress 100 years of progress into 1 year :D
    Perhaps more useful is counting time in generations. It usually takes a minimum of one generation to truly change work practices, so that seems a good idea as a rough rule of thumb. Taking that, and allowing for some influence from manhours and greater communications ability, I'd say we're definitely not as far behind civil as the 126 calendar years suggest - but we're definitely not caught up with them either. Give us another forty or fifty years, maybe less. I reckon we'll see it in our working lives.

    Predicting the future is indeed a tricky business.
    Sure, in 40 or 50 years, we'll have computers that do the software engineering for us...


  • Advertisement
  • Registered Users, Registered Users 2 Posts: 40,038 ✭✭✭✭Sparks


    fergalr wrote: »
    but most of the claims it seemed to quote were just correlations.
    Correlation isn't causation, but a correlation that strong (92% of the top 100 do CPD to level 4, against an 11% median for the whole industry) definitely merits investigation.
    I'd be extremely sceptical of anyone claiming to produce a report saying 'Jimmy did course X, our profits rose Y'
    Depends on what course X was I'd guess; but you're generally able to measure various things in the workplace and observing changes in those metrics is what they're talking about. For a bad example, Jimmy does a course in project management and estimation; afterwards his deadline breaks fall off dramatically. For a better - if trivial - one, Jimmy does a series of courses in Python programming; afterwards the coding group hauls in €Y in Python contracts compared to €X beforehand.
    Like, if I ask someone to explain to me how binary search works, and they are chancing their arm, I'm going to know pretty fast.
    Yeah, but how can you tell the guy who will chase after the latest fad idea for a design from the guy who'll check the numbers and do some testing first?
    Like I said, you can find the worst cases (eg. the guy who doesn't get binary search or tries or whatever) fast, but not the cases who're just good enough to do real damage (I may be biased, but I've been called in more than once to fix that kind of mess).
    But if they are that good, surely the company can find a use for them in sales?!
    They tend to end up in Sales allright, or Marketing, or as the trophy CTO. You know the character in Dilbert that promises the product can do six things that are physically impossible and will be shipped on tuesday even though you've not gotten off the whiteboard yet? That's the guy...
    If you could describe about situations in which such a BS artist fooled you, how they fooled you, and what sort of damage they went on to do, then that'd make a really interesting blog post...
    It'd also make for a really expensive libel lawsuit :D Our whole industry is basing hiring off reputation to one extent or another - have you ever interviewed someone without googling them (in the last few years at least)? And if you wrote a blog post slating their work practices, that's going to impair their right to earn a living and you're in front of a High Court Judge...
    You are right about the NDAs - I've been a candidate before and had to tell people that I couldn't talk about certain projects in more detail, because of NDA concerns.
    Yeah, it's something that continually irks me when writing for the blog. "Wow, that was a PITA of a bug, I ought to write that up for the blog... oh crap, NDA" :(
    Ask them how they write code. Can they even have a conversation on developer productivity? What tools would they use, if they were restructuring the team? You don't need to ask them to break NDAs to find the answers to those questions.
    No, but all you get is talk, and those are the things that you can't just talk the talk on. Hell, the worst offenders I ever met were able to give you the best conversation on those topics - and then they tie the team up in knots because of bad documentation (another bugbear of mine from past experiences) or not using version control or not listening to clients or whatever.
    I think you are putting too much faith in how well other engineering branches solve these people problems. I may be wrong. Next time I'm hanging out with a bunch of civil/mech engineers, I'm going to have a chat with them about this sort of thing.
    Well, I wouldn't say they've got perfect solutions - but they do have workable ones, which is a long way past us (and I don't think a perfect solution to a human problem is really possible anyway).
    Surely something like a PhD is supposed to have a large chunk of both (peer-appraised) merit and mentoring? And solicitors must pass exams, and have a mentoring period too? Same with medical doctors, etc.
    MDs are probably an exception allright ;) But then, they're required to undertake CPD by law. Barristers too - not sure about solicitors. PhDs are, I'm afraid, more about endurance and tenacity than brilliance and competence (that's not to say any idiot can get one, just that you don't have to be outstanding in your graduating class in college or get played by Russel Crowe in a movie :D ). Professorships are more an administrative/political role here than in the US (where they're really a different animal alltogether - their professors are more akin to our Lecturers and Fellows). And successful CEOs... well, there it can go either way really. Some are really good, some are just lucky, and telling them apart isn't trivial.
    I have to say, your faith in the C.Eng. qualification makes me wonder if I've underestimated it. I don't know though, I've met some C.Engs that were fine at what they did, but you know, they do their job, they've gone through the training, but if they were software people, they wouldn't be what you'd consider the really good ones. Hmm... food for thought.
    Thing is, what defines a "really good" developer and what defines a "really good" civil engineer? There's the nub of the question.
    Predicting the future is indeed a tricky business.
    Sure, in 40 or 50 years, we'll have computers that do the software engineering for us...
    :DTo err is human... to really screw up, you need a computer. :D


  • Registered Users, Registered Users 2 Posts: 1,428 ✭✭✭MysticalRain


    As the saying goes, don't believe everything you read in the papers. A lot of Irish "journalists" just simply regurgitate press releases from various business lobby groups and publish meaningless statistics that count up all the IT jobs on the main Irish recruitment websites without taking account of the fact that the same job might be posted on multiple websites and that the same websites are flooded with fake jobs these days. Even in the boom years, you still had 50-100 people applying for a single job.

    I think a career in programming is more of a vocation than a job, so maybe there will always be a shortage of who are really good at it. But the fact is employers could do a lot more to encourage people to go into the industry. Employers don't want to hire graduates which hinders people from entering the industry in the first place. It's hard to be optimistic about a career if your work can be outsourced to cheaper location in India. Long hours and anti-social work practices discourage women from joining the industry. I wish employers would simply stop whining and actually do something to make IT a more attractive career people who are not just geeks.


  • Registered Users, Registered Users 2 Posts: 3,766 ✭✭✭Reku


    I wish employers would simply stop whining and actually do something to make IT a more attractive career people who are not just geeks.
    But did the bible not say "Blessed are the geeks for they shall inherit the earth"? :p

    I wish employers would just shut up with their BS about the quality of Irish graduates when they don't even give those who achieve top grades a chance. They also regularly complain there aren't enough science graduates, yet most science graduates I know are either employed in the financial services (yup, I'm sure there's lots of scientific knowledge needed there.... They could've dropped out in third year since most of the science courses stop worrying about a person's maths education after that.), have emigrated, or gone back to college because their science degree (even those who recieved a 1.1!!!) is useless in Ireland. The only science graduates I know who are still engaged in science are working/studying in the universities as there quite simply aren't the jobs for them. Unfortunately government figures tend to just take these statements about there not being enough science graduates as gospel, and don't bother looking into the figures, and so they in turn repeat the claims that we need more science graduates.


Advertisement