Slashdot Mirror


Ask Slashdot: Transitioning From 'Hacker' To 'Engineer'?

antifoidulus writes "I'm about to get my masters in Computer Science and start out (again) in the 'real world.' I already have a job lined up, but there is one thing that is really nagging me. Since my academic work has focused almost solely on computer science and not software engineering per se, I'm really still a 'hacker,' meaning I take a problem, sketch together a rough solution using the appropriate CS algorithms, and then code something up (using a lot of prints to debug). I do some basic testing and then go with it. Obviously, something like that works quite well in the academic environment, but not in the 'real world.' Even at my previous job, which was sort of a jack-of-all-trades (sysadmin, security, support, and programming), the testing procedures were not particularly rigorous, and as a result I don't think I'm really mature as an 'engineer.' So my question to the community is: how do you make the transition from hacker (in the positive sense) to a real engineer. Obviously the 'Mythical Man Month' is on the reading list, but would you recommend anything else? How do you get out of the 'hacker' mindset?"

7 of 446 comments (clear)

  1. development styles by sneakyimp · · Score: 1, Funny

    Learn to bullshit about development methods like agile, waterfall, etc. Learn to estimate project costs before a project starts. Expect to spend lots of time making these estimates without getting paid for them only to be told that your estimate is too expensive and you've been beat out by some 'hacker' from Asia or Eastern Europe where the cost of living is a fraction of yours.

    If you play your cards right, you will graduate from programmer of the line to 'system architect' or something like that where you tell other programmers what to do.

  2. Re:Don't worry by glebovitz · · Score: 1, Funny

    Sorry, but we reserve the GUI design jobs for Monkeys and typewriters.

  3. Re:Don't worry by ozmanjusri · · Score: 3, Funny

    Huh? What do the MCSEs do then?

    --
    "I've got more toys than Teruhisa Kitahara."
  4. You have to specify SOFTWARE engineer by Swampash · · Score: 5, Funny

    So you don't get confused with a real, actual engineer.

  5. Re:What do you think "engineering" is? by wvmarle · · Score: 4, Funny

    I would add that the big difference between "hacking" and an engineering approach is a structured understanding of the problem.

    I may assume that the CS masters study has taken care of that "structured understanding" part. In other words: hacker + CS degree = software engineer.

  6. Re:Hacking and Engineering by wvmarle · · Score: 1, Funny

    LOL

    The big difference with house vs. software is that when you nail some boards together it's quite permanent, and hard to remove and redo. I admit to do programming mainly alone the second line, but usually with something like a plan, and working quite targeted to it. More like:

    1. Nail boards together.
    2.Step back.
    3. Location correct, all straight up and aligned with the rest? goto 6.
    4. Redo latest board, and/or adjust previous boards.
    5. goto 3.
    6. Looks like a livable house? end.
    7. goto 1.

    But then without the goto statements :-)

  7. Re:Don't worry by stjobe · · Score: 5, Funny

    MCSE: Minsweeper Consultant and Solitaire Expert
    At least that's what I was always told.

    --
    "Total destruction the only solution" - Bob Marley