Ethics is an often overlooked concept in development teams. However, ethics-driven development must always be at the forefront of programming processes to ensure data protection and product wholesomeness.
Almost everything–if not everything–depends on some computer system in the modern world. Everything has an IT technology behind it, from large enterprise operations to driving. Technology has inevitably found a way to sneak into our daily lives. It has made data collection the primary purpose of most software, apps, and other of the many IT products we have come to adopt. As a result, data has become the new currency, and it is the lifeline of countless business structures worldwide. Personal data is transferred, sold, purchased, and stored left and right by the same technologies that make our lives easier. However, this has sparked concerns regarding data security and has become one of the biggest hurdles for developers due to the implications inherent to handling user information. Consequently, as the masterminds behind these technologies, programmers and IT professionals are tasked with committing to their users through ethics-driven development practices.
Unfortunately, when most people think of software development practices, ethics isn’t the first thing to pop into their priorities list. After all, programmers and developers are supposed to burst with technical knowledge and master domains such as functionality, algorithms, and several other IT specifications. However, we need to recognize that technology and most of its tools increasingly affect its users’ lives on a deeply personal level. Financial apps or mobile healthcare solutions, for instance, have the power to make people’s lives better, or they can make them worse if the people behind them are in it for the wrong reasons. The most talented programmer can wreak havoc on any project if they lack the properly marked ethical boundaries to create a wholesome IT product.
Moreover, studies have shown that over 90% of global technology users have at least one significant concern about their data privacy. As a result, it becomes evident that failures within these IT systems are all too common, as we always hear about security breaches and data theft on the news. For this reason, beyond professional aptitudes and talents, ethical conduct must be placed at the core of software and app development. We, as an industry, have to impart the proper knowledge and principles that determine the boundaries between thriving as professionals and further feeding users’ fears.
It Starts With You
Unlike the Hippocratic oath for doctors, developers don’t have a single code of technology ethics to adhere to and swear eternal allegiance. Yes, there are global ethics guidelines for programmers, such as the Association for Computing Machinery’s code of ethics or the Institute of Electrical and Electronics Engineers (IEEE) manual. However, there is no one-size-fits-all approach to ethics-driven development that fits all contexts and companies. Organizations need to develop explicit and sustainable internal policies and guidelines that are iterative and adapt to the development company’s day-to-day activities and operations. Furthermore, the ethical dimensions of programming and developing IT products have been left implicit and, in some cases, even relegated to a small chapter in training. Hence, the importance of educating development teams and merging ethics with their daily work routine.
As a starting point, development companies must understand they should never skip ethical training to favor practical knowledge. Both concepts aren’t interchangeable; they are complementary. Moreover, educating developers about how their work can improve or jeopardize people’s lives is critical to promote the adoption of an ethically-driven environment.
Furthermore, ongoing ethical practices in development teams must be rewarding processes for programmers and developers alike. Berating and scolding never made anybody happy. Always make sure to align your team’s interests and their well-being with the company’s ethics policies and incentives. Creating an ethics-driven development culture must be carried out through active measures where all parties are incentivized. In a nutshell, the efficacy of ethics as a learning cycle depends on it being enforced as a regular part of your developers’ daily work routine.
Aside from enforcing smart hiring procedures, here are some of the best practices we employ at Foonkie Monkey to ensure an ethical programming environment.
Enforce an Ethics-First Work Culture
It’s a commonly accepted premise that ethics is a pervasive facet of most–if not all–job descriptions, but it is often overlooked in technological practices. The unavoidable fact that programmers are granted access to important user data as part of their job makes it imperative for ethics to be an intrinsic part of their work environment. Additionally, because of the immense penetration technologies have in people’s lives and the diverse life-changing scenarios they are used in, ethical considerations are always at play. This statement is particularly true for healthcare and FinTech app developers because sensitive data continually moves back and forth. IT professionals handling this information are responsible for its protection, and the stakes of the ethical implications of their coding are always high. For this reason, development companies must promote synergy between ethical and professional skills and enforce it in all aspects of the development lifecycle.
For us at Foonkie Monkey, enforcing an ethical work culture means implementing an ethics-driven development framework that encompasses every step of a product’s life. It is an ongoing learning process where ethics is an integral part of the programmer’s daily work, not just a dull point on a checklist. This continuous learning process means that ethical reflection never stops; it is iterative, it is not a one-time lecture, taken at training and forgotten. Moreover, because mobile and software technologies are continually evolving and changing, ethics-driven development needs to be adapted accordingly and embraced as an ongoing learning cycle that grows and changes. Development companies must prompt their programmers to consider their products’ ethical outcomes. This helps them adjust their decisions and practices, learn from their mistakes, and understand the impact they have on users’ lives.
Highlight the Impact Their Product Can Have on Users’ Lives
A study conducted by Stack Overflow found that more than half of the surveyed developers wouldn’t engage in unethical practices, no matter what. Sadly though, almost 37% stated they would consider coding with an unethical purpose depending on the situation. To avoid these figures from rising, development companies must prompt their programmers to assess the impact their product will have on the user’s life. It can make it significantly worse or significantly better. Thus, the relationship between the developer and the user depends on way more than just an IT product’s features. After all, programmers and developers are the first defense lines against the abuse and misuse of technological tools and their data.
The ethics-first development work environment must highlight a programmer’s responsibility to their user. Programmers must align their expertise and skills with their ethical compass to regulate their power over their user’s data and make sure that power isn’t abused. After all, with great power comes great responsibility.
They are the only ones who fully understand their systems and products’ technical and functional aspects. Hence, nobody else can make sure that sensitive data elements are protected, and they are the only ones who can provide users with a safe product that they can fully trust. Moreover, since these IT products are often employed in the most sensitive aspects of users’ lives, ethical frameworks in the workplace can ensure the soundness of the connection between users, programmers, and development companies. This connection can help propel the industry forward, and programmers are central to what happens next. They have it in their hands to make technology the solution rather than the enemy
Establish Chains of Accountability Through Teamwork
The 2020 Ponemon Institute Cost of Insider Threats report found that the cost of insider incidents where a member of the company stole or sold user data rose from $8.76 million in 2018 to a staggering $11.5 million in 2020. For that reason, and to protect the user, development companies must take the necessary steps to define ethical boundaries for all programmers and developers. Organizationally speaking, teamwork is one of the most effective ways of making sure ethical boundaries are always set in place. Since management and supervisors can’t be on top of every single action of their devs, promoting teamwork and enforcing accountability through shared coding and testing helps set ethical roadblocks in place. Teamwork is a prominent element in DevOps teams, but we can’t overlook moral control as one of its key benefits.
At Foonkie Monkey, we always enforce processes where the code and implementations are visible and shared to the entire team working on the product. Our development teams make sure that every aspect of the application meets the technical and ethical standards set in the workplace and that everything lines up with the best practices before taking the product to the user. This way, every part of the app’s bones is visible to the team, and distinct responsibility chains are established. It is straightforward for everyone on the team who is responsible for what part of the development lifecycle.
On that same note, accountability automatically calibrates ethical compasses across teams. It becomes evident who is ultimately accountable for providing explanations if there is a moral flaw in the project. Programmers and developers are always responsible for their actions within the project. Furthermore, if they follow ethical and technical guidelines to the T, they can also ensure that their team members do the same.
Have Information Security Policies in Place and Link Them to Ethical Programming
This point might seem like an obvious one. Still, its importance for development companies can’t be stressed enough, especially when we know that a primary cause for most of the most significant security breaches in history was inside jobs. When dealing with user data, security and privacy policies are essential components of the development process, especially in healthcare and FinTech scenarios like ours. These policies encompass all measures taken to ensure the confidentiality, integrity, and availability of the data while also enforcing compliance with regulatory government policies.
However, these policies must be linked to developer teams’ ethical compass so that ethics always remain at the forefront of project development and are parallel to legal requirements. Remember, legal and ethical are two different things. Security policies are essential for legally safeguarding user data. Still, we should never treat ethics as a marginal component of the development lifecycle. It should go hand-in-hand with implementing mandatory compliances.
Moreover, in regulated industries such as healthcare or FinTech, access to sensitive user data must be limited to an as-needed basis. The data should only be accessed and handled by the team members that must use it to do their jobs, no one else. Implementing this measure will vary depending on the context. Still, it is smart to reduce risks and temptations if there was ever a rogue employee with unnecessary access to sensitive data.
Ethics-driven development in the app and software development industry is currently at a murky stage. It is still at the individual level, where ethical behavior depends on the professional alone. Most companies aren’t willing or ready to adopt policies to guide their employees’ moral compasses. As with other professions, like doctors or lawyers, the development industry needs to set standards that outline ethical considerations for professionals in the business. A doctor, for instance, is legally and ethically required to handle a person’s health with due care. Why shouldn’t the same ethical duties apply to the programmer developing the technologies that currently deal with the same delicate aspects of human life? Especially now, when technology is becoming all-encompassing and used in vital human interests such as healthcare. Ethical responsibility has to be weaved into operational policies and must be enforced at all times, not only when it’s a requirement.
As leading development partners, companies like Foonkie Monkey, where ethical behaviors are always encouraged and guided, are tasked with teaching others to do the same. From the hiring process to every part of our development cycles, we put ethics at the forefront of our business practices. Our work environment has ethical components that are continually evolving and adapt to a particular project’s needs and requirements. As a result, we ensure our employees will always deliver the best possible product to our clients. Additionally, our ethical guidelines can improve the standards by which we all work and raise the bar to become an ethically-guided industry.