It is another Sunday morning in winter in the Twin Cities of Minneapolis and St. Paul. Something is going on with the weather. Today the highs will be around 32F. In addition you can see green grass in many lawns. I was talking with my son who lives in Indiana and he mentioned that yesterday they woke up to several inches of fresh snow. He was going with his family to a Vivaldi concert in Cincinnati and hoping that the roads would cooperate. In contrast, the roads in my neck of the woods are perfectly clean. My wife and I will be leaving shortly for a walk in the Mall of America. Stores open at 11:00 AM so if we get there no later than 09:00 AM we should have plenty of time to feed my Fitbit five miles or more, get a bite and head back home.
A few days ago, I was talking with a software engineer. I do not know his actual age, but I would infer that he should be in his late 20’s. He asked for my opinion regarding what should his next career move be? When asked for my opinion I seldom give an immediate response unless I have been actively working on a problem. My typical answer is that I will consult with my pillow. By sleeping on the question it seems that I am able to better respond. If it would be a technical issue then I would spend some time researching and possibly writing some code to come up with an educated answer. In the case at hand, there is no code to develop. I just need to get my thoughts straight and come with an answer.
Contrary to popular believe that people can be categorized and be put into pigeon holes, I believe that we are all unique. Our uniqueness comes from the fact that from the day we are conceived, our DNA is different from other human beings. During the years of development up until our first job, and then through what follows up to the point of deciding on, what should our next step be in our professional career, the experiences we have lived are unique to us. That said; how can someone be advised?
After finishing my initial formal education with a MS degree in Computer Science – EE, moved to Houston, TX. The reason for the move was weather and extended family. Started working for a fortune 500 company. I was working as a technical maintenance and support engineer. During that time I traveled for training several times to the main offices in St. Paul, MN.
An opportunity came up in St. Paul and decided to take it. I worked in a group that developed office products (i.e., copiers). One thing and the other and ended moving to a group that acted as an internal contractor for divisions that were interested in developing new products. I worked in products with different groups. I gained large and varied exposure with multiple technologies.
At some point a very large project which included hardware and software development seemed to get stagnant. I received a phone call inviting me to lead a group developing a new product in Maryland. After a morning interview that ended with lunch at a seafood restaurant, I enjoyed my first “soft shell crab sandwich” and shortly after moved to MD.
The startup company had a complete different approach. For starters I was sent for a three week course to learn software internals for a computer that was going to collect, store and distribute information for the new process control system. My other assignment was being the lead on the color console. The console was to be used by operators to configure and monitor processes (i.e., oil refineries). In about 15 months the product which included several hardware and software components was being sold and the product entered the maintenance phase. I would lie if many coworkers including myself did not put several 80+ hour weeks.
At that time, my wife and I decided and purchased a new home. We had two kids. The weather in MD is very nice. My wife and the boys spent most of the long summer in a social club. Life was good.
One day I received a call from my previous job, asking if I could go back as a contractor / consultant. They needed some help with the project. They assured me that things had changed. So we decided to move back to the Twin Cities of Minneapolis and St. Paul. The technical management had changed. Work was fun and I was involved and several components. Given that I was working as a contractor I did not enjoyed the benefits offered to employees.
One day I received a call from a large company in the northwest part of the country. The people were great and I was going to be working as an employee. I moved shortly after while my wife and family stayed behind taking care of the sale of the house and waiting for the school year to finish. A few weeks in some family issues came up and I decided to return to MN.
I worked as an employee for the same fortune 500 company. Had the opportunity to work with the developer / inventor of one of the best raster graphic products for the Apple and Windows platform.
Things started to become stagnant one again. Some coworkers left and started their own ventures. I decided to follow suit.
My wife and I opened a small software development company which grew to employ around 20 individuals. We started by offering development services for companies that wanted to develop new products or enhance existing ones. I guess I was trying to recreate the environment that was very rewarding for me while working the first time at the fortune 500 company.
After some time, we developed our own storage and distribution products. We added support for dozens of automated libraries and stacker and media types. Some of our products were being sold worldwide. I am not going to admit that all was great. The responsibility of having employees and the associated issues were rewarding and taxing at the same time.
At some point, our two sons started to work in the business. We were able to delegate some tasks. That said, for years I worked 60+ hour weeks which included some weekend. I learned that if you enjoy what you do, the extra time at work is not an issue.
Time went by and our family experienced some changes. We decided that it was best if we sold the business. Today I work for the company that acquired our business. I always spent time on different projects. In my humble opinion, that is the only way to learn and apply your new knowledge.
I believe that people needs to explore new opportunities. Some changes work better than others. That seems to me the best way to stay on top of technology. I have met people that were not interested in change. From the first day they were interested in retiring. I have also met individuals that are always interested in making a change. If the company is not interested, they move on.
So, the purpose of this post was to provide advice to a person I know who was kind enough to ask for my opinion. If you paid attention to this post, I always like to learn and apply new knowledge. The new knowledge may be used in new products or to enhance and support existing ones. For example, a new product may be an office assistant or a new way to deploy an existing product using microservices. Perhaps the existing product requires a new database engine with better capabilities that the existing one.
When deciding on a change one needs to evaluate the type of job, if you studied engineering you may look for engineering or for a management position in engineering. Most medium to large size companies tend to have a technical and management parallel ladders. You also need to look for compensation, benefits and perks. One very important thing is the people with whom you will be interacting day in and day out. I fully understand that that is not something you can learn before, but just follow your gut feeling.
My dad worked for the same company his entire career. Some time ago, I was taking a technical course in CA and some of the attendees mentioned that they would change jobs several times a year to get better compensation. Not sure that is possible today but at that time seemed to work in southern California.
In conclusion, my advice is to think about the pros and cons of the move, get involved your family because it will affect them, and then move forward, which includes staying where you are today. Perhaps a lateral change or the same company on a different group.
If you have comments or questions regarding this or any other post, please leave me a message below.
Keep on learning and developing great products;
Please follow me on Twitter: @john_canessa