Software Development - Privilege and Responsibility

SamirKumarMishra,Brisbane,Australia


As a Software Developers, we've all had our share of bad days. The Days in which our operating systems or workstations crash, networks go down and coworkers conspire against us to suck all productivity out of the air. Days in which our bosses or their bosses or our customers hammer us for errors done or for the functionality not implemented yet. These Days turn into nights and back again into days as we chase some elusive gnome from our system.

Still, we (most of us) come to the profession of software development by our choice, the choice we make for ourselves for our career. There are many reasons given by the world but I believe it is typically because we like to create things right from thought, things that give life to our machines and that matter to our organizations, and even to the world. For others, software creeps up behind us and grabs us by the neck; although we may secure an uneasy truce with it even though we may not be code warriors, we still require some degree of development skills so that we can wrestle that software to the ground and direct it to carry out our will. Either way, as an intentional or as an accidental developer, we build things that the rest of the world needs and uses and yet is often invisible to them.

Keeping this in mind, it is both a privilege as well as a responsibility to be a software developer. It is a privilege because, In spite of some inevitable dark days, we (collectively as a Team) are given the opportunity to create things that matters to individuals, to teams, to organizations, to countries and to our civilization. We have the honor of delivering the stuff of pure intellectual effort that can heal, serve, entertain, connect, and liberate, providing the freedom to human spirit so that they can pursue those activities that are purely and uniquely human.

At the same time, we have a deep responsibility. Because individuals and organizations depend on the artifacts we create, we have an obligation to deliver
practices, object-oriented development stands out as a proven technology that has been used to successfully build and deliver a multitude of complex software-intensive systems in a variety of problem domains.

Still, the demand for software continues to rise at a staggering rate. The ever-growing capabilities of our hardware together with an increasing social awareness and economic value of the utility of computers create tremendous pressure to automate systems of even greater complexity. The fundamental value of object-oriented development, with its well-defined notation and process, is that it releases the human spirit to focus its creative energies upon the truly demanding parts in the crafting of useful, quality systems in a timely, predictable, and repeatable fashion.
The only way we as a Software Developer can keep up with new challenges posed to us in our day to day life is by constantly upgrading our skills, challenging the original idea, out of box thinking. This is one of the factors which make this profession unique. There are only few profession where one needs to learn constantly and think about improvising on what is already existing.

When I started in the Industry (almost 10 years ago) the hype was that within 10-15 years all the software requirements will be fulfilled and then there will not be any requirement of Software Professionals. There will not be any jobs. Software



 

systems of quality in a manner that applies scarce human and computing resources intentionally and wisely. This is why we hurt when our projects fail, not only because each failure represents our inability to deliver real value, but also because life is too short to spend precious time on constructing bad software that no one wants, needs, or will ever use. As professionals, we also have a moral responsibility. Do we ever choose to labor on a system that we know will fail or may steal from a person their time, their liberty, or their life? The answer to these will be “No”. These are the kind of questions that do not have a technical answer, but rather are ones that must be consciously weighed by our individual belief system as we deploy technology to the world.

Thus, software development is ultimately a human activity, not only because it emanates from the human intellect, but also because it requires the cooperative activity of others to make it real. It requires collaboration and understanding from other human beings either working in the same team or different team or organization.

As professionals, we therefore constantly seek better ways to deliver quality software that matters, simply because our task is too complex to squander our time and our energy. This is why we look at successful projects and analyze why they were successful and similarly look at failed projects so that we may learn from their mistakes. We then codify all these lessons learned in the best practices and processes that constitute our industry's tribal memory, such as found in the RUP. For the same reason, we agree upon common notations such as the UML that help us communicate and reason about our systems. In a nutshell we create a Knowledge Repository over a period of time at individual, organization or a community level. This is why the Software

Professionals are also called as Knowledge Workers. In this pile of best

professionals were not given the acceptance they deserved. Today I see the number of software professionals have grown n folds and the demand is growing. People are becoming aware of what the Software Development is all about. Working in computers is not only about selling and fixing computer problems, general mass is becoming aware that there is something called Software Development which is equally good (if not better) compared to other engineering profession.

Summary:

Many of us are already in Software Development Profession and there are many more who wants to pursue their dreams in Software Development. Whether we come to the profession of software development by accident or with malice aforethought, the bottom line is we build things that the rest of the world needs. Because of that, it is both a privilege as well as a responsibility to be a software developer. In this article an attempt has been made to explain what it means to be a Software Developer.

About The Author: Samir Kumar Mishra is currently based in Brisbane, Australia. His current work involves designing and developing a business system based on Semantic Database technology. His expertise is in System Design and Architecture for J2EE and COM based systems, Distributed contributing systems

.

 

NAVIGATION PARTNERS FOLLOW US ON ADDRESS

Home Google Scholar Facebook B.Brains Scholastic Center (under BBrains Development Society), Patna (Bihar), India
About us CrossRef Twitter Tel no: +91-8002359537
Contact Us Open Journal Systems Linkedin Mail Id: bbmanthan@gmail.com



Copyright © Biharbrains.org 2005-2024. All rights reserved.