Do some carpal tunnel stretching at your desk and during your breaks. Pay attention to your sitting posture and consider the ergonomics of your work environment. Every so often sit quietly, turn on relaxing music, breath slowly and deeply, and stretch.
The Art in Value
One of the challenges in a creative profession is managing the perception of your “value” including the work that you perform, the objects that you create, and the temperament that you nourish. These are truly three independent metrics.
Due to the demands of the profession and its continually advancing technologies developers tend to dwell more on what they already know (or what they need to learn) rather than focusing on how others perceive them. As software development is both an art and a vocation however, it is important to pay attention to both your internal qualifications as well as the perceived external value that you add to your job.
The value of your physical software development opus is fourfold: it may provide a revenue stream by itself, it may tender “goodwill” to customers and draw them in to purchase other products, it may offer cost savings as the business operates, and finally it may give a strategic advantage by opening new markets that create unique services.
The value of the product you help design is a separate matter however from the value of the actual work that you perform. Somewhat impishly, you can lead a project that creates the next YouTube and still only get paid like a system designer. Your employer compares your base salary to that of any other developer they could hire off the street. The cost of a foot of electrical wire inside a jet plane is the same even if you only use it to connect your power outlet to your reading lamp.
But now let’s consider your actual value as viewed by your employer. This is a more nebulous quantity that relates to a host of factors, many of which are strictly outside of your vocation. Are you a healthy employee? Then you add value by your contributions to the company’s medical plan. Are you cheerful and easy to work with? Then you add value by improving the morale of the workplace. Are you a good mentor? Then you add value indirectly through improving the productivity of others.
As a professional remember not only to stay sharp on your skills, but also to pay attention to the art in your value.
Artful Compromise
Some I.T. personnel are as far apart as the East is from the West. Three metrics separate the developers from the management:
+ Easy to use
+ Fast
+ Proprietary
From management’s perspective software and file formats should be fast, easy to use, and universally available. In this way the company can avoid lock-in to knowledge experts or particular vendors. Management wants to periodically toss their empty wooden bucket into the nearby flowing river of tools, vendors, and talent, and swoop out a full scoop of the latest technology.
The developers however actually prefer the opposite: software and file formats that are cumbersome, resource intensive, and proprietary. In this way they can become the experts and increase their value to the employer. They want to provide a specialized adjustable three-setting showerhead (with its own plumbing) to tickle management’s fancy.
So with both sides pulling in opposite directions what actually gets developed… what can possibly morph into physical being? Somewhere amidst the massive amounts of energy used in the politics and positioning of the two sides a compromise springs up in-between.
Irrespective of the methodology employed or the layers of middle management helping to assuage the differences, software developed in a corporate environment ends up partially complicated in the more obscure parts, just fast enough to get the job done, and reliant upon one or two inside hacks. We manually scoop buckets of water into the intake valve of the water boiler to feed the massage shower head. It can be no other way.
Vendors
Reviewing vendors and buying tools is an integral part of large-scale software development. If you are building anything substantial you will need to buy tools and, if not already available, a DBMS. Hardware purchases may be outside your direct responsibilities, yet your expertise might be used to specify the hardware’s operational requirements.
In this chapter I discuss an approach that flexibly allows you to review vendors; I also provide a cautionary tale demonstrating the lengths that vendors will go through to sell you their wares.
Artful Purchasing
When your employer enjoins you to buy a software package for your company you must brave the pressure of many conflicting forces. Of course the vendors and their employees have a near manic desire to have you select them over their competitors. It’s always better to be at the “choosing” end of the vendor relationship than at the receiving end of uninvited solicitations. Be wary of vendors who make the first effort to contact you… I will further describe one such salesman horror-story in the next chapter.
Your staff may have their preferences based upon their own familiarities or tastes. Yet considering the fiduciary responsibility you owe your employer, your role requires you to override their preferences and execute due diligence to evaluate the vendors on a level playing field. You may feel that pleasing the biases of your superiors comes first, but you should still behave as if you are representing the company’s owners.
Begin with some exploratory internet searches to discover software with the keywords representing some of your more specific requirements. This will give you a clue to the names of the main contenders. Then run a query with the top three package names along with the words “comparison” or “review.” This should retrieve some industry zines with a more thorough examination of what the vendors offer.
Now create a spreadsheet for yourself with “weighted” line-items for the characteristics you need. Remember to add lines for Vendor stability and facilitation record: more than just purchasing software you are buying a long-term service relationship with a company. How are they run? Are they stable? How is their customer service? It can easily take a few days to conduct a thorough review.
After you narrow the field ask the top two choices if you can get a demo. Since some of the actual folks in your company who will be using the package day-to-day may lack the skill levels to be comfortable with the software allow them time to examine it and then gather their impressions.
Large purchases may require considerably more effort in the review including issuing formal RFPs, evaluating the impact of any BPR that may need to occur, and determining how you will integrate the new purchase into existing systems. Don’t be shy to retain professional assistance for larger selection efforts.
Artful Verification
Sometimes despite your desires to remain detached and analytical (you did after all choose to be a system design professional) you will land in a position that requires you to pass judgment on others. This is never more true than when you are selecting a vendor to sell you a software package. You have to be friendly but still cynical; vendors send you salespeople who know how to read your desires and make promises that cater to them. As a buyer you need to lean critically toward what you know as the facts.
Back in the early 1980s, when personal computers had 5 1/4 inch floppy disks and still went zyg zyg beep to start up (when ten megabyte hard disks were all the rage) I had the opportunity to review a few vendors to provide hard disk security systems. The concern back then was that somebody could boot up from a floppy, switch to the C drive, and read all your data.
One vendor impressed me by claiming that they not only could provide complete security, but actually prevent an unauthorized person from accessing the hard disk at all. As I had already reviewed the bios code and was familiar with how a computer loaded bootstrap, I found their claim to be, eh, interesting. I asked to see a demo and they arranged for a live salesman visit.
He gave a fairly professional dog and pony show, demonstrating how their software could be configured