Send CathInfo's owner Matthew a gift from his Amazon wish list:
https://www.amazon.com/hz/wishlist/ls/25M2B8RERL1UO

Author Topic: Computer Programming as a career  (Read 2104 times)

0 Members and 1 Guest are viewing this topic.

Offline Matthew

  • Mod
  • *****
  • Posts: 31179
  • Reputation: +27095/-494
  • Gender: Male
Computer Programming as a career
« on: January 24, 2011, 02:02:44 PM »
  • Thanks!0
  • No Thanks!0
  • Here is an interesting debate about Computer Programming for young men today:

    About computer science:

    Don't study computer science.  It is a temporary career for many people,
    because there is a huge burden on you to "keep up".  After 5 years, half of
    what you know is obsolete.  There will be a new programming language
    every 5 years that you have to learn, to keep up.  Unless you like reading
    computer/technical manuals frequently, choose another career.

    If you don't have an MS or PhD, you will be considered not much more than
    a "programmer", which is a geek or nerd and not respected in a corporation.

    Software companies, like Microsoft, are now having much of their programming
    done in India or some Asian country where the labor is cheap.

    Computer programmers are not respected, like professional licensed engineers
    (civil, mechanical, electrical, industrial).  Programming is not considered an
    engineering discipline, by most corporations.  Much of programming in the real
    world is hacking and does not involve much design and analysis.  Tools are
    available to automate programming, but programmers don't like them, so the
    work remains tedious and painstaking year after year.  Much of programming
    in the real world is working on someone else's code.  

    I see many ads for programmers who know 10 computer languages and can
    "walk on water" and the job is a six month contract in $ilicon Valley, CA or
    New York, NY where the cost of living is sky high.

    After age 40, you will be considered "out-of-date".  What the corporations
    really want is some young kid with a BS and 3-5 years of experience, who likes
    working until midnight and weekends for no extra pay.  The benefit they give
    you is free coffee.  Then after you burnout in about 8 years, you get replaced
    by a fresh younger guy who knows all the latest stuff.

    You will work in an 8 x 8 foot cubicle with walls 6 feet high and fluorecent
    lights overhead for many years (if you are in a corporate environment).

    This is what I have discovered after about 30 years of experience in the real
    world.

    There are some positive things about computer science careers.

    1. You may be able to work at home some days or many days depending
    on your type of job.

    2. You may be able to go to work if you can't get any work done at home.

    3. You will get asked by all your non-technical friends to fix their computer.

    I hope this helps some of you in your decision making process.  

    - P.M.

    And here is another point of view:

    I hope preceding note does not reach the eyes of the young men.  I am sorry if Mr. Mann has had a rough go at it, but the fact is that the Information Technology field is bursting with all sorts of opportunities.  There are many men whom I know personally at St. Vincent de Paul who are programmers or are otherwise in the IT field and who make a good living in the IT field. He is correct that there is a danger of falling behind with respect to technology, but that is always the case, even for non-programmers.  I am happy to say that the outsourcing craze of the last few years has lost its momentum as companies find that the work done overseas is not up to par with our standards.  By the time the code gets reworked and nerves are frayed over poor work, there is no cost savings to the company.  Our company actually tried this approach when we worked with a firm that was doing our website.  It was a disaster.  Not only did one of our owners have to be in extra early to take a call from the development team in the Philippines, the product was terrible.  Anyone preaching outsourcing today ought to be very careful, lest he be seen as a dinosaur.

     

    You do not need a Master’s or Ph.D.  An MBA would be a good idea for someone interested in rising through the ranks of an organization.  In fact, IT people have never been more respected, since there is now in many companies a clear understanding of the role that IT plays in adding to the bottom line.  Moreover, there is so much more to IT than programming.  Data and Business Analysts are always in demand, as are Project Managers.  I will admit that there is always a risk that someone who goes into management and gets out of day-to-day programming will be at risk of falling behind with technology, but if you can program one language, you should be able to transfer those skills to another language.  That will just have to remain a question mark until someone gets into a job and decides what he really likes to do.  Some IT managers work it out so that they still program and therefore keep up with the latest developments in technology while maintaining a manager’s title and salary.  Regarding age, our clients want someone who can do the job right away, and do it well, which generally excludes people under 30.  There is most definitely discrimination against older people—I absolutely believe that is going on.  The question, however, is whether that is due to age or to assumptions made by employers that someone who is, say, 52, will be too expensive.

     

    So, where are some areas in IT I would suggest for a career?  Certainly any of the web technologies (ASP.Net, VB.Net, Java), server support and administration, database programming and administration, security (huge!), data architecture, network/systems engineering, Unix/Linux/Windows administration, even telecommunications, which is daily blended more and more with traditional IT.  Of course, each one of these broad categories I just cited has many subsets.

     

    The key thing a young man needs to keep in mind is that he needs to know what employers are offering in the way of current technology, their plans to keep up with new technology, and any training and certifications they encourage their employees to earn.  Run from companies/bosses that do not value keeping up with new technologies.  Do your homework on these companies.  Get in school and use your professors to guide you in making a decision on making a career in IT, looking at your strengths and interests, as well as the long-term relevance of a particular technology.

    -S.Q.
    Sr. Resource Manager  
    Want to say "thank you"? 
    You can send me a gift from my Amazon wishlist!
    https://www.amazon.com/hz/wishlist/ls/25M2B8RERL1UO

    Paypal donations: matthew@chantcd.com


    Offline Matthew

    • Mod
    • *****
    • Posts: 31179
    • Reputation: +27095/-494
    • Gender: Male
    Computer Programming as a career
    « Reply #1 on: January 24, 2011, 02:26:00 PM »
  • Thanks!0
  • No Thanks!0
  • My response:

    I agree that a young man has to be careful when choosing Computer Science for a career path.

    To thrive in CS, the young man in question MUST be a whiz at computers. I mean above-average intelligence, learns things quickly and independently, good at designing abstract things, and in general having an engineering bent.

    A man *might* be able to learn how to program in college, but if he didn't teach himself I'd be skeptical about how good of a programmer he really is. I think the really good programmers like it so much, they got into it on their own. And regardless, you *have* to be self-taught because college only lasts 4 years. Your career lasts much longer than that. If you can't learn easily and quickly on your own, you need a different career. End of story.

    Obviously ALL young people today are good with computers to some extent, so impressing Grandma with your computer skills does NOT mean you will be able to compete well in a CS field today (2011).

    P.M. is absolutely correct that CS requires a lot of constant interest in computers, programming, design. That's why it helps if you actually have natural talent for programming/design. You have to LIKE it, so you won't mind keeping up with it all the time. If you're looking for a job you can support your family with, punch out, and go home and do "personal/family stuff" until next morning, look elsewhere for a career. You can't just learn it once and then use the skill for the rest of your career. You will be studying all the time to keep up.

    Yes, I know. All careers require a certain amount of "ongoing education" -- but CS heads the list, I'm afraid. Doctors can't relate. The human body isn't redesigned from the ground up every 5 or 10 years. Lawyers can't relate. All the legal terms stay in Latin -- not a different language every 5 years. So doctors, chemical/mechanical/industrial engineers, accountants, lawyers, etc. would NOT be able to relate.

    And it's well known that computer programmers often have to work 60 (or more) hour weeks -- at least if they work for a larger company. If you're "on your own" you'll be constantly having to "sell yourself" to prospective clients. And let's face it -- good computer programmers are usually introverts -- not usually good salesmen. There are concrete and good reasons for this. They tend to be detail-oriented, so they are well aware of their weaknesses. That poses quite a problem when trying to sell yourself.
    For best results, try to find a smaller company. There you have a bit more freedom, ability to study/keep up with things, you find a nice niche, etc.

    I think P.M.'s e-mail made many good points. He might be putting forth a worst-case scenario, but I hold that the AVERAGE experience is not far up from what he describes.
    Want to say "thank you"? 
    You can send me a gift from my Amazon wishlist!
    https://www.amazon.com/hz/wishlist/ls/25M2B8RERL1UO

    Paypal donations: matthew@chantcd.com


    Offline innocenza

    • Jr. Member
    • **
    • Posts: 231
    • Reputation: +16/-1
    • Gender: Male
    Computer Programming as a career
    « Reply #2 on: January 24, 2011, 03:19:10 PM »
  • Thanks!0
  • No Thanks!0
  • Thanks for this well-rounded information on computer science as a career, Matthew.

    With relation to what I had read, which is admittedly dated:  there were professors of CS in the universities who believed the field was dead for Americans but couldn't say so because of their positions.

    With respect to M.S. engineers, their having more status than programmers, and their not needing to 'relate' to changing economic circuмstances as did programmers:  I had read anecdotal information, in a letter to the editor context, by a more mature engineer who, after being laid off, widened his search for another position to include the entire USA and sent out resumes everywhere but never got anywhere; further, according to his experience, there were American companies where the entire engineering force consisted of people all from the same circuмscribed locality in a third world country, i.e., China, speaking the same dialect.

    I would welcome hearing more on this general subject.

    Offline innocenza

    • Jr. Member
    • **
    • Posts: 231
    • Reputation: +16/-1
    • Gender: Male
    Computer Programming as a career
    « Reply #3 on: January 30, 2011, 04:19:43 AM »
  • Thanks!0
  • No Thanks!0
  • Quote from: ddecker
    Good evening =^)

    First, a bit of background about my knowledge and experience ... I am a Sr. Software Engineer working for a large (1500+ employees), privately-owned financial services provider.  I am 30 years old and I have been working with computers professionally for 11 years and I am still working on my Bachelor's in Computer Science (40 hours to go!) and have been working with them for fun since I was 9 years old.  I am largely self-taught, though I do have about 75% of my Bachelor's (CS) under my belt and will likely complete it sometime in the next couple of years if I can squeeze in enough time.

    The programming industry as a whole is indeed very dynamic.  New languages are constantly being developed and existing languages and technologies are constantly being improved upon and extended.  At the same time, certain programming languages (e.g., COBOL) will remain with us for a very long time as an estimated 60% or more of all code in the world, particularly in businesses, is written in older languages and is far too expensive to migrate to a newer language or technology platform.  Jobs programming in these older languages will continue to become higher-paid and more in-demand as more of the older programming generation retire.  If folks whose primary experience is in these older languages also learn newer languages as well, they will likely find themselves in the very enviable position of being in extremely high demand =^)

    As with any career field with such a large range of options for career paths, the computer programmer's career will be largely what they make of it.  I find it difficult to think of a career field where continual learning is not a prerequisite for greater opportunities and greater understanding of a chosen profession.  If you enjoy learning, the joy of discovery and the opportunity to try new things, I can't imagine a career that would be more rewarding than a career in computer science.  If you are not excited by learning, I would strongly suggest a different career.

    For myself, being largely self-educated in computer science, the costs of my education was very small due to the vast amount of educational materials that can be had for free via the internet.  For example, even MIT offers their computer science class materials, lectures and whatnot for free via their website.  

    As far as outsourcing to other countries is concerned ... while it is true that many companies do outsource software projects overseas, most of those projects are plagued with problems due to cultural differences and misunderstandings in requirements.  While those problems may sound somewhat insignficant, believe me, they are not.  Even outsourcing a software project to a US-based firm can be a real challenge.  I have worked for several companies that have outsourced projects to both overseas and local firms and the results were terrible, usually ending with myself and my co-workers fixing or completely rewriting the software to make it fit the requirements and needs for which it was originally intended.  I wouldn't worry much about your job getting outsourced.  I would tend to worry more about your job being replaced by an immigrant who is highly skilled (H1B visas do have caps, but companies are constantly pressing the government to allow more).  Again, if you continue to learn and deepen your knowledge and experience, you won't have to worry about losing your job and will likely find that you can move wherever you like and demand a pretty nice salary.


    Thanks for your educated input, DD.   It is academic for me, since I am not even basically computer literate;  but I do like to try to find out the facts regarding our economic situation.

    Offline Jehanne

    • Sr. Member
    • ****
    • Posts: 2561
    • Reputation: +459/-11
    • Gender: Male
    Computer Programming as a career
    « Reply #4 on: January 30, 2011, 07:30:48 AM »
  • Thanks!0
  • No Thanks!0
  • I have a BA in Computer Science and a MBA, with 20 years of corporate software experience.  I have been unemployed now since November 2009.  With 5 children, it has been really difficult to move, let alone finance it.  And, even if we could move, it would be risky.  I am reluctant to spend between $5 and $10K to move only to get laid-off again, so we are staying put.  We are on the dole, a difficult existence, but a manageable one.


    Offline Jamie

    • Jr. Member
    • **
    • Posts: 472
    • Reputation: +13/-1
    • Gender: Male
    Computer Programming as a career
    « Reply #5 on: January 30, 2011, 01:53:39 PM »
  • Thanks!0
  • No Thanks!0
  • Quote from: Matthew
    Here is an interesting debate about Computer Programming for young men today:

    About computer science:

    Don't study computer science.  It is a temporary career for many people,
    because there is a huge burden on you to "keep up".  After 5 years, half of
    what you know is obsolete.  There will be a new programming language
    every 5 years that you have to learn, to keep up.  Unless you like reading
    computer/technical manuals frequently, choose another career.

    If you don't have an MS or PhD, you will be considered not much more than
    a "programmer", which is a geek or nerd and not respected in a corporation.

    Software companies, like Microsoft, are now having much of their programming
    done in India or some Asian country where the labor is cheap.

    Computer programmers are not respected, like professional licensed engineers
    (civil, mechanical, electrical, industrial).  Programming is not considered an
    engineering discipline, by most corporations.  Much of programming in the real
    world is hacking and does not involve much design and analysis.  Tools are
    available to automate programming, but programmers don't like them, so the
    work remains tedious and painstaking year after year.  Much of programming
    in the real world is working on someone else's code.  

    I see many ads for programmers who know 10 computer languages and can
    "walk on water" and the job is a six month contract in $ilicon Valley, CA or
    New York, NY where the cost of living is sky high.

    After age 40, you will be considered "out-of-date".  What the corporations
    really want is some young kid with a BS and 3-5 years of experience, who likes
    working until midnight and weekends for no extra pay.  The benefit they give
    you is free coffee.  Then after you burnout in about 8 years, you get replaced
    by a fresh younger guy who knows all the latest stuff.

    You will work in an 8 x 8 foot cubicle with walls 6 feet high and fluorecent
    lights overhead for many years (if you are in a corporate environment).

    This is what I have discovered after about 30 years of experience in the real
    world.

    There are some positive things about computer science careers.

    1. You may be able to work at home some days or many days depending
    on your type of job.

    2. You may be able to go to work if you can't get any work done at home.

    3. You will get asked by all your non-technical friends to fix their computer.

    I hope this helps some of you in your decision making process.  

    - P.M.

    And here is another point of view:

    I hope preceding note does not reach the eyes of the young men.  I am sorry if Mr. Mann has had a rough go at it, but the fact is that the Information Technology field is bursting with all sorts of opportunities.  There are many men whom I know personally at St. Vincent de Paul who are programmers or are otherwise in the IT field and who make a good living in the IT field. He is correct that there is a danger of falling behind with respect to technology, but that is always the case, even for non-programmers.  I am happy to say that the outsourcing craze of the last few years has lost its momentum as companies find that the work done overseas is not up to par with our standards.  By the time the code gets reworked and nerves are frayed over poor work, there is no cost savings to the company.  Our company actually tried this approach when we worked with a firm that was doing our website.  It was a disaster.  Not only did one of our owners have to be in extra early to take a call from the development team in the Philippines, the product was terrible.  Anyone preaching outsourcing today ought to be very careful, lest he be seen as a dinosaur.

     

    You do not need a Master’s or Ph.D.  An MBA would be a good idea for someone interested in rising through the ranks of an organization.  In fact, IT people have never been more respected, since there is now in many companies a clear understanding of the role that IT plays in adding to the bottom line.  Moreover, there is so much more to IT than programming.  Data and Business Analysts are always in demand, as are Project Managers.  I will admit that there is always a risk that someone who goes into management and gets out of day-to-day programming will be at risk of falling behind with technology, but if you can program one language, you should be able to transfer those skills to another language.  That will just have to remain a question mark until someone gets into a job and decides what he really likes to do.  Some IT managers work it out so that they still program and therefore keep up with the latest developments in technology while maintaining a manager’s title and salary.  Regarding age, our clients want someone who can do the job right away, and do it well, which generally excludes people under 30.  There is most definitely discrimination against older people—I absolutely believe that is going on.  The question, however, is whether that is due to age or to assumptions made by employers that someone who is, say, 52, will be too expensive.

     

    So, where are some areas in IT I would suggest for a career?  Certainly any of the web technologies (ASP.Net, VB.Net, Java), server support and administration, database programming and administration, security (huge!), data architecture, network/systems engineering, Unix/Linux/Windows administration, even telecommunications, which is daily blended more and more with traditional IT.  Of course, each one of these broad categories I just cited has many subsets.

     

    The key thing a young man needs to keep in mind is that he needs to know what employers are offering in the way of current technology, their plans to keep up with new technology, and any training and certifications they encourage their employees to earn.  Run from companies/bosses that do not value keeping up with new technologies.  Do your homework on these companies.  Get in school and use your professors to guide you in making a decision on making a career in IT, looking at your strengths and interests, as well as the long-term relevance of a particular technology.

    -S.Q.
    Sr. Resource Manager  


    That first quote is patently wrong.  C, C++, Object Pascal, Java, even C# are all languages that are now relatively old (and very old in some cases) and they are still the main programming languages in use for all computer systems.  Learning C in 1970 would not require you to have relearnt programming every 5 years - aside from minor changes the language is still the same and is still used a lot.

    As for the 8x8 cubicle - this is also untrue.  I worked as a programmer for many years and not once did I work in a cubicle.  In fact, in one company I worked in a very large room (think ballroom size) and sat beside a window with an unobstructed view of an incredibly beautiful harbour surrounded by tree covered hills.

    In another job I worked in an office with a stunning view of the Thames river - again no cubicles.

    And then I worked from home in my very comfortable living room with another unobstructed view of the Thames.

    My current job (self employed) has me at home working when I want and where I want.  Learning a programming language was one of the best decisions I ever made and I would recommend it in a heartbeat.

    The guy that wrote the first quote obviously did not have the 30 years real world experience he claimed to have had otherwise he would know that most of what he is saying is untrue.

    Offline Lybus

    • Full Member
    • ***
    • Posts: 756
    • Reputation: +176/-1
    • Gender: Male
    Computer Programming as a career
    « Reply #6 on: January 30, 2011, 03:51:24 PM »
  • Thanks!0
  • No Thanks!0
  • Being 20, these emails speak to me.

    I did delve into programming on my own a little bit a few years back. I managed to learn HTML pretty solidly, but only learned the basic syntax of C++ and languages such as that, and only made a few very rudimentary programs.

    At the moment I am thinking quite strongly of pursuing a mechanical engineering major.

    So Matthew, do you think it would be good to have at least a general understanding of programming languages and computers in general, perhaps having the power to program in one language? Would it compliment mechanical engineering well?

    In regards to being a responsible man, would it be interesting to learn, after six years of accuмulating all the wisdom you could, that you had it right all alon