Slashdot Mirror


Ask Slashdot: What Makes a Great Software Developer?

Nerval's Lobster writes: What does it take to become a great — or even just a good — software developer? According to developer Michael O. Church's posting on Quora (later posted on LifeHacker), it's a long list: great developers are unafraid to learn on the job, manage their careers aggressively, know the politics of software development (which he refers to as 'CS666'), avoid long days when feasible, and can tell fads from technologies that actually endure... and those are just a few of his points. Over at Salsita Software's corporate blog, meanwhile, CEO and founder Matthew Gertner boils it all down to a single point: experienced programmers and developers know when to slow down. What do you think separates the great developers from the not-so-fantastic ones?

1 of 214 comments (clear)

  1. Re:Alternate Link by Anonymous Coward · · Score: 2, Informative

    A good software developer is also someone who listens to user bugs reports and feature requests.

    Maybe this is true of some places, but everywhere I've worked has seen a huge separation between the developers and the end user. I think it's actually a major failing in a lot of big projects.

    A pretty common structure:

    - contracts people and requirements analysts work out a set of contractually binding requirements with the "client" (a group which is usually themselves abstracted from the people who will actually use the software).
    - designers build a design to meet those requirements, it's reviewed by "the client" (again, not Joe user, but some manager theoretically representing Joe users interests).
    - testers build tests to the design and the requirements, which our friend, quotey McClient approves.
    - software developers build to the design to pass the tests
    - testers test
    - client signs off on the software based on witnessing the tests they approved
    - client gets software, installs it (or it is installed for them)
    - users promptly go "what the actual fuck!" and try to deal with software that doesn't actually do what they need