Colby Gillmann, Software Quality Engineer II

How does one efficiently and effectively take on and complete a project with which they have little to no experience? While there is no cookie-cutter formula that will fit everyone, I would like to give some insight as to how I go about the process and key points that I have found when learning new skills or processes on my own to complete a project that is new to me.

While some projects may have a wider learning curve than others and you may already possess some of the basic skills needed, every new project will have some sort of learning curve for everyone. Thus lies the first hurdle: where does one start? For me, I like to have an objective in mind that I wish to complete. This can be anything from a test case I want to automate to improving an already existing process by creating some other way to perform it; or, outside of software, just being able to look at an object and wanting to be able to make it myself. Where there is a will, there is a way, they say. It is much easier to have the willpower to overcome the research and tedious tasks once you know what you want as the outcome of the new project.

Next would be the research. As you are researching and finding examples and articles to read on the project, you may find there are lots of extra skills you did not realize you were going to need. Sometimes I have found that there might not even be enough information on the project. This is where knowing what you want as the outcome will help you to push through the monotony. In today’s world we have many places to find information. For software related topics my go-to is usually Youtube, Stack Overflow, W3School, GeeksforGeeks, or anything else that comes up in my Google search. Usually, you can find a good example of something similar. When you cannot seem to find any examples, you can also use an AI engine such as ChatGTP. I like to think of these as another search engine that I can give more information to, thus to help me refine the information I get back. ChatGTP, for example, uses information that is already on the internet. So, if you ask it what two colors make orange, it’s going to use the information from the internet to give you an answer, just without you having to go hunt the answer down yourself on Google. Some topics may only be found in books. Shout out to Acato, if it can be related to the company’s goals, ask the learning circle lead if the company would order a copy; then you can check it out from the bookshelf.

After you have a good understanding of the end goal or objective of your project, you would have also discovered the smaller goals to get you to your main objective. When researching you might have noticed parts that other people had trouble with or that they could not figure out themselves. This is a key indicator of ways you can split the main objective up into smaller objectives. Depending on the depth of your initial research, you may need to dig deeper into these avenues to learn more. Altogether, the overall research and smaller, more specified research, will help you discover the “what you don’t know that you don’t know.”

At some point, your research will start to level off. Maybe you have seen all the close examples to your project that the internet has to offer, and every site you visit now just says the same information you already know, or there are no more books related to your project. It could be that you are simply burned out on the research and are just itching to get your hands dirty and start on your own project. This leveling off could be shown in many ways. There is no wrong time to get started on the project. If something comes up that you do not know anything about, you will realize this and can always learn at that time. There is no harm in taking a step back to gain some more knowledge.