This past fall, Portland Webworks entered its 14th year of operation as a custom software development and consulting firm. As this milestone passed I reflected on how much the industry had changed around this organization over the years. The greatest change, of course, being the radical outbreak of nearly ubiquitous Internet connectivity and the monumental impact of that change on how software is constructed. Despite these radical changes, I also observed that many fundamental characteristics of the Portland Webworks organization remain nearly unaltered since our inception.
Hurtling toward irrelevancy?
As a business owner and entrepreneur I found myself asking whether this relatively static position in the face of such great dynamism was a recipe for irrelevancy. How much organizational change is appropriate to keep a company relevant in such a dynamic environment? Has Portland Webworks’ evolution kept pace with the radical changes outside its doors? There is an argument to be made that very little has changed within the walls of Portland Webworks. For instance, consider the following observations:
- We still build stuff you can’t buy off the shelf.
- We still approach projects as a cross-discipline team (PM, Designer, Developer, QA).
- We still show up to work every morning in Portland’s Old Port.
- We still occasionally work for free to keep clients happy.
- We still make a practice of recruiting corporate IT ex-patriots who feel they have more to offer.
- We still bring open source technologies to the enterprise.
Ostensibly, very little has changed when you consider all of these fundamental characteristics of Portland Webworks in aggregate. I guess this begs the next question. Has anything changed and have those changes increased our relevancy? When I think back to how Portland Webworks has evolved over the last decade a few items do come to mind. For instance, consider the following changes:
Change. Change. Change.
UI/UX Takes Center Stage - The now ubiquitous terms “user experience” or the concept of user-centered design were infrequently (if ever) uttered in our early years. Now, not a day goes by without these terms being at the forefront our strategies. So much so that Portland Webworks now has a distinct role on our projects for a user-experience expert as well as a separate graphic design expert. What today we consider essential was never the case in the past.
Process. Born out of necessity – I recall that the ability to gauge a project’s done-ness or a budget’s status in our early years was largely done with words, email and occasionally bit of arm waiving. Written requirements were considered a luxury. As the scope and complexity of our projects expanded over the years it was quickly evident that our duct tape and bailing wire approach was inadequate. Looking back, early investments in formal project management training, certifications, information systems as well as a few key hires resulted in a robust and reproducible methodology that is the backbone of our current processes. It is my opinion that things have never been so efficient and transparent for our key project stakeholders. And, not a moment too soon, as expectations for performance management have never been higher with our larger corporate and public sector software development initiatives.
Mobile Explodes – It is safe to say that mobile software didn’t exist in its current form when Portland Webworks was starting out. In our early days our greatest challenge was whether the software performed as expected across a browser (or two) or whether the modem was capable of loading the page in a reasonable amount of time. In retrospect, it was a bit of luck and a bit of foresight that allowed us to smoothly transition into offering mobile application development. As it turns out, our service to so many different industries using so many technologies over the years afforded our development team a cross-platform perspective that made objective-c on an iphone or Java on an Android device familiar territory. Our omnivore attitude toward software development and a bit of elbow grease by our development team prepared us unknowingly for this major paradigm shift in computing. So much so, that even this very site offers a responsive design suitable for phones, tablets, and PC’s.
Quality Matters – We have always considered quality to be a key differentiator in the marketplace. That said, quality assurance in our early days is but a shadow of our current processes. We have invested in the creation of a dedicated QA team that delivers on this discipline’s best practices and the tools (View Sample QA Tool Screen). This investment was essential as the scope, complexity and criticality of the applications we were building matured. For instance, consider our work for the Maine Judicial Branch or the Idaho Department of Health and Welfare. In these cases our vigilance to enforcing quality practices was critical else there is a chance that a citizen be unjustly denied their right to liberty or a child go hungry unnecessarily. The value of QA and our commitment to it has never been higher.
Source Code. Not Just for Developers. – The responsibility to deliver quality doesn’t end when a software feature meets a particular business requirement. We have guided clients through the full lifecycle of an application from inception through maintenance. We’ve learned that quality of the source code (regardless of it meeting a particular business requirement) is too often overlooked and creates costly technical debt in the maintenance phase of large initiatives. With this insight, we have invested in an information system and other practices that improve the efficiency of code review (See a code review screen). Although it is perennially difficult to justify to clients and to squeeze into tight project budgets, we continue to recognize that this practice not only improves product quality, saves business stakeholders money over time, but also simultaneously advances our development team’s capabilities.
When I look at all of these seemingly small changes in their totality, I find that my initial characterization of the organization being somehow static in the face of a dynamic environment is actually an overstatement. Instead, as is commonly the case when it comes to evolution, the process often goes unnoticed by those experiencing it first hand. In reality, despite a few fundamentals that have so far remained constant, much has changed within the walls of this organization, but the changes, the progress, we’ve made is tangible and real. These small, but continuous changes are what have prepared us for the next phase in our organization’s growth. Furthermore, if you’ve been to the office recently, you will have surely noticed that we’ve never had so many faces, so many people, implementing the small changes that keep us relevant. It is my belief that the increased head count and the new perspectives that go along with those people will only serve to increase our rate of change and our ability to adapt. In the natural world, evolution is a powerful force for change and ultimately it identifies the winners of natural selection. Fortunately, I am confident that our team has never been more prepared to elevate this organization to unprecedented heights. It is exciting to compete, to evolve and to succeed and I look forward being part of the next chapter of Portland Webworks’ story.