Inspired by Steve Ballmer's performance I decided to give an overview of different types of software engineers' characters. Various advices for self-improvement were also provided. Presented at local IT event - IT Weekend. DISCLAIMER: All images were found either via Google Image Search, or on flickr.com
Text of Developers, developers, developers, developers
1. Developers, developers,developers, developers @YaroslavBunyakSoftServe Inc.
2. newbie (aka n00b) tabula rasa no experience a lot of energy easy to hire work for food (cheap) lacks self-confidence knows everything 3. young genius expert knowledge of sometechnology / programminglanguage not! rewrite everything! in theory, there is not differencebetween theory and practice 4. princess thinks everybody aroundshould work hard to supporthim e.g. latest build is broken - cantwork bug in somebodys code -wont fix chair is uncomfortable -loose 80% of performance 5. analyst any problem / task / algorithmlooks too complex to solve paralysis by analysis 6. architect prefers elegant architecturesover elegant solutions OOP, patterns, etc. no KISSes 7. x# quick results with lots of hacks, shims, bugs needs support staff (plumbers)to fix and polish a feature e.g. 1 day to implement 1.5 months to fix bugs andpolish some companies love them,some hate them 8. + $500 work for moneyz, no stringsattached jumps from company A to B toC for higher salary / dev level projects / tasks dont matter 9. slacker coffee / smokes / game breaksevery 15 minutes always busy 10. evangelist technology / company /process X will rule the world other technologies /companies Y are dumb go tell the world! 11. romantic programmers are of a specialkind software is making our world abetter place 12. shy guy avoids communication withcolleagues prefers one-man tasks /projects skips team-building events 13. communicator talks with everybody -colleagues, clients, randompeople blah-blah-blah 14. tale-teller talks about imaginary personalachievements generates over 900 ideas a day but wont take part in theirimplementation 15. adventurer not shy to learn newtechnologies / programminglanguages / platforms lets do it! 16. pragmatic uses common sense uses own and othersexperience continuous self-improvement hard to find, takes time to raise 17. hacker can tackle practically anyproblem, even with math and finish it on time with goodquality fixes impossible bugs gets things done! 18. superstar do not exist, probably do you know one? should be very expensive andhard to find / hire 19. Thank You! Questions?