Thread: Career Progression

  1. #1
    Registered User
    Join Date
    Mar 2010
    Posts
    109

    Question Career Progression

    Recently, I've been trying to decide on a path to continue my programming career. Originally, I started out doing some web-based tool integration for a small ISP before landing a job as a game developer for a small independent studio. The job was fun, but the president was crazy and eventually ran the company into the ground. I saw the writing on the wall before the end and left to try a job at a large corporation (since I'd never been part of one). I now work for a large financial institution doing internal web-based reporting on information security.

    The job I have is quite stable and provides me with a large set of benefits outside of pay. However, I find myself a little bored with the job. This is not due to lack of work, but perhaps just a disinterest in the environment that I work with now (LAMP-based application development).

    I have been thinking of studying to pursue a new programming job that I would enjoy more. I miss developing native applications. C/C++ is what I had been working with previously for about 5 years, so it would be easier for me to step back into. However, I'm unsure of the future of the skill set.

    In short, I am interested in hearing people's opinions on choosing a path of programming at this point. I would like to find something that I enjoy doing but also has room for growth (in terms of pay grade or future opportunities). Currently, I've been thinking about doing iOS development (not creating my own apps to sell, but to work for a company developing for the platform) or getting into embedded systems. Does anyone have any opinions on these choices and/or other thoughts?

  2. #2
    Registered User
    Join Date
    Oct 2006
    Posts
    3,445
    Quote Originally Posted by syzygy View Post
    C/C++ is what I had been working with previously for about 5 years, so it would be easier for me to step back into. However, I'm unsure of the future of the skill set.
    there will always be a demand for C and C++ developers. large portions of the world are written in those two languages, and there does not seem to be any sign of that status changing anytime soon. C and C++ will continue to be relevant for many, many years to come.

    or getting into embedded systems
    get a raspberry pi and start hacking.

  3. #3
    Registered User
    Join Date
    May 2003
    Posts
    1,619
    Quote Originally Posted by syzygy View Post
    Recently, I've been trying to decide on a path to continue my programming career. Originally, I started out doing some web-based tool integration for a small ISP before landing a job as a game developer for a small independent studio. The job was fun, but the president was crazy and eventually ran the company into the ground. I saw the writing on the wall before the end and left to try a job at a large corporation (since I'd never been part of one). I now work for a large financial institution doing internal web-based reporting on information security.

    The job I have is quite stable and provides me with a large set of benefits outside of pay. However, I find myself a little bored with the job. This is not due to lack of work, but perhaps just a disinterest in the environment that I work with now (LAMP-based application development).

    I have been thinking of studying to pursue a new programming job that I would enjoy more. I miss developing native applications. C/C++ is what I had been working with previously for about 5 years, so it would be easier for me to step back into. However, I'm unsure of the future of the skill set.

    In short, I am interested in hearing people's opinions on choosing a path of programming at this point. I would like to find something that I enjoy doing but also has room for growth (in terms of pay grade or future opportunities). Currently, I've been thinking about doing iOS development (not creating my own apps to sell, but to work for a company developing for the platform) or getting into embedded systems. Does anyone have any opinions on these choices and/or other thoughts?
    Well, C/C++, even if somewhat declining in popularity, are still very popular. Additionally, if you wanted to pick up a new language, moving from C++ to C# is a matter of a few weeks.

    I'd also think hard, though, about exactly what bores you. Is it truly the language itself, or is it the domain you're working in - perhaps you simply find the specific problems you're being asked to tackle unrewarding? Maybe I'm just speaking from my own perspective, but I've had a blast programming interesting/rewarding things even in languages I'd never have wanted to otherwise use. I think there's also likely to be a huge difference in corporate culture between a small ISP or a startup game shop and a huge, established financial organization.

    I'd really do a lot of soul searching and think about all the various aspects of your job and pick two or three things that are most important to you, and then work from there. A good technique is to carry a pad of paper, and jot down times during the week that you are most excited/interested in your work, and times when you are the least; sometimes it's surprising the patterns you can pick out when you do that. Maybe the platform or language is truly one of the things that's important to you, but you might be surprised.

    Anyhow, once you have your few things, don't compromise on those areas. Use them as a measuring stick to evaluate every opportunity you see.
    You ever try a pink golf ball, Wally? Why, the wind shear on a pink ball alone can take the head clean off a 90 pound midget at 300 yards.

  4. #4
    Registered User
    Join Date
    Dec 2006
    Location
    Canada
    Posts
    3,229
    Embedded systems are very hard unless you also have solid electronics knowledge. People writing code on that level need to be intimately familiar with hardware (sensor interfacing, etc).

    Rpi (and other SBCs like gumstix) is nice, but not really an embedded system. Very few people embed a full Linux system into a product. Usually there's either no OS or a minimal RTOS (basically just a scheduler).

    If you liked game programming, why not look for another game studio?

  5. #5
    Registered User
    Join Date
    Mar 2010
    Posts
    109
    Quote Originally Posted by Cat View Post
    I'd really do a lot of soul searching and think about all the various aspects of your job and pick two or three things that are most important to you, and then work from there. A good technique is to carry a pad of paper, and jot down times during the week that you are most excited/interested in your work, and times when you are the least; sometimes it's surprising the patterns you can pick out when you do that. Maybe the platform or language is truly one of the things that's important to you, but you might be surprised..
    I'll keep a pad around and jot down anything that comes to mind. I'm definitely not so hot about my team itself and the way it's managed, but I do know that I miss programming more closely to the metal.

    C# is definitely an option, and I've spent some time reading up on it. It's not hard to switch over to, but I'm wondering if I would have more of an advantage continuing on my C/C++ path since many newer programmers these days are taught Java/C# in school and are less familiar with having to do things like manage memory or use pointers.

    Quote Originally Posted by cyberfish View Post
    Embedded systems are very hard unless you also have solid electronics knowledge. People writing code on that level need to be intimately familiar with hardware (sensor interfacing, etc).

    Rpi (and other SBCs like gumstix) is nice, but not really an embedded system. Very few people embed a full Linux system into a product. Usually there's either no OS or a minimal RTOS (basically just a scheduler).

    If you liked game programming, why not look for another game studio?
    I suppose you are right about the embedded systems bit. I'm not an electrical engineer so I would be at a disadvantage. I actually thought because of my game programming experience I would have a bit of a chance in that area.

    I'm not interested in going back to games just because it's hard to find a decent studio that doesn't overwork you and pay you very little at the same time (unless you are really great at what you do). I have two kids now and I don't want to find myself working longs hours routinely; at least not until they've grown up to the point where they ignore me all the time anyway. Otherwise, I would return to making video games.

    Thank you for the comments.

  6. #6
    Officially An Architect brewbuck's Avatar
    Join Date
    Mar 2007
    Location
    Portland, OR
    Posts
    7,396
    Quote Originally Posted by syzygy View Post
    C/C++ is what I had been working with previously for about 5 years, so it would be easier for me to step back into. However, I'm unsure of the future of the skill set.
    It's not like operating systems, drivers, CGI and video games are going to go away. Not to mention all the firmware running on the billions of little boxes all over the planet.

    The number of C/C++ development positions may decrease slightly over time but the salaries will trend oppositely. You've got to be good at it though.
    Code:
    //try
    //{
    	if (a) do { f( b); } while(1);
    	else   do { f(!b); } while(1);
    //}

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Career
    By howeezy in forum A Brief History of Cprogramming.com
    Replies: 28
    Last Post: 10-20-2005, 06:08 AM
  2. web programming career?!
    By Leeman_s in forum A Brief History of Cprogramming.com
    Replies: 8
    Last Post: 01-13-2004, 07:47 AM
  3. logical progression of scenario
    By Leeman_s in forum A Brief History of Cprogramming.com
    Replies: 3
    Last Post: 12-10-2003, 07:53 PM
  4. Programming as a career
    By Fool in forum A Brief History of Cprogramming.com
    Replies: 17
    Last Post: 09-06-2001, 11:27 AM