There are some interesting things that happen when a job comes to you as opposed to the alternative (read: job hunting trying to find a company that fits you). When you fit the company things click. Perhaps I'm being a bit presumptuous with that last sentence, but it's truly how I feel working at VendAsta. This feeling is one of the things that has solidified this idea of positive dissatisfaction in my mind and how it can be a huge benefit to people in any field of work, but even more so to those in the world of software development.
Our small development team for the MFS (My Front Steps) project is nearly completed now and I'm amazed at how well things are coming together. We have a very well rounded team of developers who all seem to be on the same page about things. Our experiences are varied and cover a broad spectrum of disciplines which gives great depth to such a small team. However, I believe the common uniting factor in what is going to make us such a great development team is the fact that we all realize that we haven't arrived in terms of our abilities. We don't know it all. I certainly don't know it all, and I'll switch to the first person from this point on as I don't want to put words in anyone's mouth.
I define "Positive Dissatisfaction" as a state of mind that reflects an individuals desire to continually better themselves by coming to the realization that they cannot be satisfied with the knowledge they have attained at any given point in time. I feel that in order to truly succeed in the field of software development that I have to continually admit that there is always a better way to do things than the way I think things should be done. My goal is to reinvent myself every day with the knowledge I learn from others, the web, and, more generally, my life experience.
I believe that Positive Dissatisfaction fits great with the Scrum development methodology. Short iterations offer a huge opportunity for team members to improve their development practices and experience the benefits of learning quickly from one another. The fact that the team is self regulating in terms of task load, allocation, and followup promotes a great sense of ownership in the project that reinforces a sense of continual refinement of processes. I certainly don't want to be contributing code/resources to the project that was the result of some half-assed effort. All of these factors help me to keep myself in a continual state of Positive Dissatisfaction (have I said that enough yet?) so that I'm attempting to contribute with a 110% effort.
When you fit the company, it really makes you want to contribute that way :)