Growing up I always liked being self-sufficient and having my own money. In order to make the most of my time, I usually took on some risky manual labor jobs – work that my friends never wanted. Although I did not necessarily prefer this type of work, as the jobs were physically demanding, they paid very well.
The jobs I worked came from across the board. One job was working the midnight shift on the loading docks at a local produce refrigerated warehouse. Sometimes I still have nightmares of full loads of corn coming in- damaged during transit and having to be repacked. I also worked in a custom automation equipment factory. I was always in a support role to the core workers that were permanently there (typically, this meant that I did all the jobs they did not want to do). Regardless, I would usually accept any shifts that were available; the more the better.
Many years later (and somewhat based on raising my own kids), I started to realize how much these difficult jobs made me value and look at my own work. Here are a couple takeaways of why working in a factory can make you better in software:
- It is hard work – no, really hard work. While there may not be physical risks associated with working in software, there are in factories. Heavy equipment and moving stock and inventory not only teaches you to work hard, but also to build up the discipline to work hard until the end of your shift.
- Know your tools and work smart. While this concept is mentioned quite a bit in the software industry, it can be easier to grasp with more physically demanding jobs. I can recall one instance where my manager asked me to move several loads of heavy equipment from one location to another. After working on one of the piles for half a day, he came over and asked me what I was doing. I explained how heavy everything was and why it was taking so long. After quickly laughing at me, he grabbed a hand pump and moved the second pile in mere minutes. Lesson learned.
- Sometimes you just have to power through problems. Possessing the ability to stay on task and not waiver is a difficult skill to develop. I often see this occur with many recent graduates; they have not had the need to dig deep and long into specific topics in their studies. As such, they are not as adept at powering through some of the more difficult, manual processes they now have to face in the workplace. In fact, we encounter this challenge in much of the analytical work our industry presents. It is as much a physical challenge to stay focused on a task as it is a mental challenge. Consistently maintaining your energy at a high level is key.
- There are few heroes in a factory. While being the individual who does great work and receives accolades is great, you also want to be the person who works well in a team. Many factory jobs are interdependent; when manual tasks are executed by two focused people, they are easily and efficiently completed.
- Visually measure your progress. While working in a factory was hard work, I always found it rewarding to be able to see my daily accomplishments for a given shift. If I was building something, you could see it – if I was moving something, you could see it. There was a measurable quality to the work I completed. As you move into the software industry, it is easy to feel busy. You should structure your work so that you can be able to see what you have accomplished for the day and receive some feeling of closure for a job well done. Having a visual measure of progress often helps you stay focused- something that is difficult for many of us to do in the knowledge economy.
Now, there are also some negatives that made me appreciate what can be accomplished within a software environment that cannot be achieved in a factory setup:
- Seniority is a sign of experience in a factory. People rise up the ranks within a factory by the level of experience. Experience is usually learned by time with some exceptions. Therefore, to build your career in a factory, you have to outlast many of your peers. If you break the chain of hierarchy, you break the norm and tend to upset others. This is not exactly motivating nor proactive for a team environment. Having the ability to grow professionally with your own merit is one characteristic I will always appreciate about the software industry. Those who work hard and add value are usually respected.
- Without the ability to add value independently, we are replaceable cogs. Working hard and giving your all can produce value in a factory, but this does not mean you are more significant than the next able body. You are only a pair of hands, ones that unless tied to a brain are very similar to another pair of hands. I realized if I wanted to make an impact on a company or client base, I had to do more than just use my hands; I needed to utilize all that I had to offer in order to not be treated as a mere “commodity”.
While working these jobs I never would have thought that I would come to appreciate them so many years later. While the extra money I made was spent many moons ago, I still have those lessons carrying me forward.