Reading thought some materials about costs of a professional work. Sometimes, people just do not understand the effort and the value of an item or work being put into their project. From the outside, the end product might look like just a simple static item to do simple things, and that’s just how they value the project.
This is what is spoiling the professional industry. Just like how I’m struggling to meet my “client’s” requirements. I believe almost every single programmer falls into this category.
For example: Your clients wants you to make a program, and that program’s function is simply to store information about your stock into a database. It may sound as easy as, Step 1 enter item and amount, Step 2: store in hard drive, Step 3: Load data when called. Never will the client think about the trouble the programmer has to go through for that program. What kind of interface does the client needs? Bar code, keyboard, 2D bar code, or RFID? What kind of database structure do they need? Nested categories? Simple storage? What kind of output do they need? Printout, website, full report, or summary?
Besides those things, there are other things to consider such as infrastructure, program environment, modularity for support, etc. All those things are blind to the end user and all they know is they key in the data and the computer does the rest. All those happen in real time and it’s so easy and straight forward, a programmer just need to type and click a few commands for the computer to do all that.
Now, I feel really bad being underpaid for doing all this kind of work but end up being targeted as doing easy jobs. They don’t understand the work I put into and the trouble I went through to make sure their data is as accurate as possible.
Programmers, and designers don’t just make something work and look good then sell it to you. We are solutions provider. We work our ass off so you can be a little lazy or a little more efficient at yours.
Value, must not be judged by looking at the end product. It must be judged by the actual usage and work put into. If you asked for a product that function doesn’t add a lot of value to your system or working environment, that’s your fault. It’s not the programmer’s fault for following your orders.