Do You have a Job or a Career?
1 – Are you so excited about what you do for a living that you cannot get out of bed fast enough in the morning?
2 – Do you look forward to the challenges that your work activities offer you each day?
3 – Do you feel that you have a Career?
If you answered no to any of these three questions then you have a JOB!
… A Job is Something that You Do for a Living that you Dislike
…… No One Really Wants a Job!
Modern Developers Don’t have Jobs,
They have Careers!
I have found, in my career as a Professional Technologist, that there are primarily two kinds of Software Developers:
1 – The Artistic Scientist Software Developer
2 – The “Monkey See, Monkey Do” Developer
Both of these kinds of developers produce usable code for their Clients.
Both developer types provide a valuable service in the Software Industry.
So this personal assessment of mine begs the question:
What is the difference between a Software Artistic
and a Monkey See, Monkey Do Developer?
The “Monkey See, Monkey Do” Software Developer
A software developer that is not as concerned with understanding the “How” of the deliverable they provide to the Client functions as much as they are concerned with “Just Delivering Code that Works” is a Monkey See, Monkey Do developer.
They have no issues with copying any code block that will get the assigned task out of their development queue.
Unfortunately, this kind of developer does not take the time to validate that the code they have adopted for their deliverable is “Good Code’.
They don’t take the time to understand the code well enough to make that decision.
Code Duplication for Understanding is a Best Practice …
…… Code Duplication for Refactoring is a Better Practice
If a Developer is aware that this is their standard operating procedure and has no desire to change these activities then they have earned the title of “Monkey See, Monkey Do” developer.
Monkey See, Monkey Do Developers have JOBS!
The reason I believe that these types of developers do not have careers is based on my experience in high stress levels and low work satisfaction every day when I was this developer.
When the success of your engagement and your job security is based on someone else’s work, you give up control of the outcome of your work to someone else. Without the knowledge and wisdom of your deliverables you cannot guarantee your success. This makes going to work every day a stressful event.
Redefine Yourself as The Modern Developer …
…… and Leave the Monkey Behind!
The Scientist Software Developer
As a Modern Developer you practice the Art of Software Development as a Scientist within your chosen scientific platforms.
As a Scientist you seek Wisdom through Knowledge and Understanding of the physical world of Software Development.
A Software Scientist seeks a deeper Understanding of the Inner Workings of the Software Solution being Delivered
The Modern Developer uses Legacy Code as a baseline for understanding.
This code is the guide along the path of refinement.
The Software Scientist chooses, through wisdom, what elements of the understood legacy code are candidates for refactoring.
The Modern Developer NEVER delivers code that cannot be fully explained and justified.
Don’t Let Your Development Deliverables Make a “Monkey” Out of You ….
… Become a Modern Developer Scientist …
…… Practicing the Art of Software Development
Which Kind of Developer Do You Want to Be?
The Modern Developer gets up each day energized for the challenges of the day. They manage their day with the confidence that their Art will support the Science of the day’s activities.
Each day is more enjoyable as the Design Principles, Design Patterns, Best Practice Processes, Code Standards and the Wisdom from previous days wraps them in a blanket of security and confidence.
The Modern Developer knows that what they deliver for their Client will work Today, Tomorrow, Next Week, Next Month and Next Year.
They enjoy the opportunities presented to them with a reduced lower stress factor because they have a Career and NOT a JOB!
80 cents of every dollar a Client spends on a Software Project is in the Maintenance of the Software over its lifetime …
… The Modern Developer Scientist Lowers that cost through a reduced Total Cost of Ownership
The following two tabs change content below.
I am a Principal Architect at Liquid Hub in the Philadelphia area specializing in Agile Practices as a Certified Scrum Master (CSM). I use Test Driven Development (TDD) and Acceptance Test Driven Development (ATDD) with Behavior Driven Development (BDD) as my bridge to Agile User Stories Acceptance Criteria in a Domain Driven Design (DDD) implementing true RESTful services