DEV Community

Mariusz Sołtysiak
Mariusz Sołtysiak

Posted on • Originally published at mariuszsoltysiak.hashnode.dev on

Things I learned as a software engineer

I started working as a full-stack software engineer when I was 15 years old. The first few projects I found by contacting people in internet radio forums. That brought me some really good money. Sometimes as I child, I was earning more than my parents. When I started my studies I officially joined a small 3-person company and worked mostly as a PHP developer, but also when necessary I was doing the front-end part. That was pretty challenging, especially at the beginning of my professional journey.

Some people ask me if its too early or too late to become a software engineer. My answer for both is a strong NO. It is never too early or too late to develop software. The only thing that you need is strong motivation and striving to achieve the goal.

Being close to software users

The coolest thing I experienced in my first job was on-site work along with orthodontic technicians, trying to improve the system used by them for tracking the work. I recommend to everyone to do it at least once in their life, to work directly with people who are using the product. It taught me that being close to software users is a critical aspect of making the software successful and well fit to the market needs. Would you think why the buttons in this software needed to be big and the colors dark? Because technicians hands were ofter dirty after doing the appliances and covered with white powder. Without seeing it I probably would never consider this requirement.

Traveling back in time

After 7 years I realized that I needed something new and I started looking for another job. At the same moment, I decided to focus fully on the back-end and forget about the front-end stuff. That was my first decision which led me to be happier about what Im doing and made me who am I now. Do I regret being in one company for 7 years? No. It allowed me to have experience in a way that is usually not possible for bigger companies and to be independent in almost every situation.

I was scared to death when I switched companies. Completely different, with a bigger team, working in Agile, more work around the product, designs, and maintenance. It was a challenging time for me. But I promised myself that I would do everything to satisfy the expectations. I was spending long after-hours reading books, watching tutorials, and just doing projects to understand and get up-to-date with the modern world. I felt like this 15-year-old child again.

Importance of changes

This experience taught me that changes are important and necessary and its me who is responsible for looking for them. Some may think that Im suggesting changing companies often is a good idea, but Im actually against it. If you find a good company you don't need to change it. A good company supports you with finding new opportunities and challenges whenever you feel that you need to try something else. Fortunately, I managed to find the company which was Shoplo, and now it is SumUp. Sometimes I say that I changed the company without really changing the company, and not only twice but multiple times already.

From my experience, I can only tell that you should never be afraid to say, that you need a change. If you'll be waiting for someone to notice that something is not all right usually its too late. You are the driver of your career, nobody will tell you that you should change the team, tech stack, or company. Here I can recommend doing the CliftonStrengths test for yourself to see what are your strengths. It helped me a lot with making decisions about my career.

Find and praise a good boss

Before my company was acquired we were quite a small developers team (on average around 10 people). It was a time when all of us were discovering new things and new technologies. Thankfully we had full support for that by our CTO, so we could learn together as a team. Back then I made really good progress in being a better back-end engineer. It would not have happened without the support of my boss and the team, where people all were hungry to learn new things together. Our motivation was at the highest possible levels so the progress was too.

Here I would like to underline how important is to have a boss that supports the team with development. Making a product is something important, but if it is not followed by good technical decisions the team is never going to be happy and performant. If you feel like your boss is not challenging you or instead even is forcing you to use specific technologies, its time for a change. Software engineers are good only when they constantly develop. Having no field to develop means you are not staying at the current level of knowledge. The world is going on, but you're not. In a few months, you'll start to be weaker.

Id like at first to thank you for reading my first article. For a purpose, Im finishing here, because Id like to hear your feedback about the article and about the things I mentioned before continuing my story. Looking forward to hearing from you!

Top comments (0)