April 25, 2016  |  Andrew August and Rhonda Chicone

Everywhere you go and everywhere you look, you can see software in action. Take a look around. You use it at the ATM, you use it at your grocery store, and you see it on your car’s electronic dashboard. Software is what makes hardware come to life! 

We must all realize that software is never going away, at least not in our lifetime. As a matter of fact, software is slowly becoming invisible. 

I’m sure you have heard of the Internet of Things (IoT) by now. If not, the IoT is like the Internet jumping out of a gadget. An example of a gadget could be your Roku device or your front door’s dead bolt. What makes these devices do what they do? Software! The Internet doesn’t move data back and forth on its own, it needs software to do that. 

The rise of IoT can provide unique opportunities for those interested in software development. Below are some of the traits related to developer roles.


Are you that person that wonders how something works? Do you find yourself picturing how things work in your mind’s eye? You may even go so far as to take things a part just to put them back together again. A software developer must have curiosity, a desire to know how things work.

Perseverance and Tenacity

Do you get frustrated when things don't work right away? A solution to a problem is rarely found the first time around. A software developer must have perseverance and tenacity. Actually, a true software developer will not want to give up. He/she will be driven to find a workable solution to the problem at hand otherwise it causes sleepless nights.

High Tolerance for Ambiguity

Many times the requirements for a software application change over the course of it being developed. It is a fact of a software developer’s life. A software developer should have a high tolerance for ambiguity. That is, do not get overwhelmed when there is not a clear set of instructions to your reach a goal.

If you are a person that fits into the above categories, keep reading and let us explore what a software developer could do on a day-to-day business.

Creating a Plan or Part of One (No Coding Allowed)

Many people think a software developer just starts coding. Yes, a software developer does do coding eventually but first he/she has to plan or design what it is he/she is going to code. This is called an algorithm. Designing an algorithm doesn’t require any coding. Instead, the software developer will use software design tools and techniques. This is analogous to what an architect does before building a house.


Once the software is designed and solves the problem—that is, matching the requirements—then a developer will start to create the code for the software application. What does the coding look like? Well, much of the time it looks like the English language. There are many programming languages used in the world today. A few are C/C++, Java, C#, PHP, Python and JavaScript. Fact is, 9 times out of 10, once a software developer knows one language well, he/she can easily learn additional programming languages.

Developer Testing

As a software developer is coding, he/she is also debugging and testing the code. This is an important step just like the ones noted above. We all have used software that didn’t work correctly. The software developer has a responsibility to test his/her code for correctness.

Software Quality Assurance

Many times there are several pieces or components of code that make up a software application. A software developer may be responsible for testing the software application as a whole. This is sometimes called System Testing. There are a lot of categories under System Testing but the goal is to ensure the software application performs, as it should. That it meets a predefined set of the quality standards.

Change is a Constant

Good software continues to evolve over time. A software developer may have to work with another software developer’s designs, code, or test plans. A good software developer has a responsibility to create readable designs, code, and test plans.

Communications and Teamwork

Good software developers know how to communicate. This includes oral and written communications. They also know how to work in teams. Communications and teamwork is a must!

Remember, software is not going away. The software development field is an exciting one. Why not explore if you can be a part of it?

Andrew August and Rhonda Chicone are faculty members at Purdue Global. The views expressed in this article are solely those of the author(s) and do not represent the views of Purdue Global.

About the Author

Andrew August and Rhonda Chicone

Purdue University Global delivers a fully personalized, world-class education online that's tailored for adults. We offer 175 programs, including associate's, bachelor's, master's, and doctoral degrees as well as certificates, in areas such as business, IT, education, health sciences, nursing, criminal justice, and more.