I have asked this question to thousands of developers in my classes and I always hear very similar answers:
“I love creating something new that has never been done before.”
“I love giving people tools to help them do their work more efficiently.”
“I love solving problems.”
“I love learning about new domains.”
“I love learning new skills for building better software.”
“I love challenges.”
These are just a few of the answers I hear developers tell me when I ask them what they love about software development.
We software developers are an unusual group of people. Most other professionals do not love working long hours and constantly keeping up to date with the newest methodologies and skills. But we developers thrive on change and want to constantly learn and grow.
I read somewhere that the number one corralation for living a long, healthy life was not diet or exercise–much to my surprise–the number one correlation for a long life is job satisfaction!
I know a lot of people in other fields who get very little job satisfaction. I know executives who are highly successful but inwardly they feel like they have sold out. I know doctors and laywers who are burned out. I know office workers who are bored and feel like they are in dead end jobs.
And I know many, many software developers who are so into their work that others call them geeks. Personally, I would rather be a happy geek than a burned out professional. I love working on new projects, learning about new things, and getting paid to do it. I love the creative aspects to designing and building software. I love the deeper understanding I get in life when I deepen my understanding of software design.
The people I meet who are outside of the software development industry seem to have no idea what we really do. They think writing software is like doing data entry. One friend who is an artist said it would be too sterile and mechanical for her. I tried to tell her that creating software is a highly creative activity but she just glazed over.
If you build software then I don’t have to tell you how creative it can be. Software development is one of the few fields I can think of that engages the whole brain. Sure, there’s a lot of discipline involved in writing code and it requires a lot of concentration but there is also a lot of visualization and imagination needed to create new things and find new solutions to problems. I love that!
What do you love about writing software? Post a comment and let me know.