Hashnode wouldn't be the place it is today if it wasn't for developers helping each other through asking questions, starting discussions, responding to questions and writing stories. This is why we've started Dev Spotlights, a series of interviews in which we will put a spotlight on the people whose posts and comments have been appreciated by the Hashnode community.
One of the most helpful Hashnoders is Marco Alka, Full Stack Developer and DevOps at Robert Bosch GmbH. Read on to learn more about Marco, how he started coding, advice he has for new developers, and why he enjoys helping other developers on Hashnode.
Q: Hi, Marco, thanks for doing an interview with us! 🙌 How would you describe yourself? What are you currently working on?
Marco: I'm happy for the opportunity to do this interview, thanks a lot!
Well, who am I? I'd say: give me a problem, and I'll find a solution. I try to be efficient and a bit perfectionist about it, for sure, but that's who I am. In order to get things done, I continuously remind myself that I have to be open, patient and to focus on what is in front of me.
I work for Robert Bosch GmbH as an interactive product developer. Just the other day, I was promoted to full stack developer and devops responsible for my project team - which is a lot of responsibility. I love it, and it plays right into what I like to tinker with!
When I come home from work, more projects are waiting for me. Probably more than I should have started and can handle, but I like the choice: What will I do tonight? Work on my game? Give some love to my homepage? Improve my webserver project? I still have two or three applications lying around and I want to make some progress! I should also write articles for Hashnode (I have multiple ones coming up soon(tm)). As you can see, I won't be bored anytime soon.
Q: How did you start coding?
Marco: When I was a teenager, I played games, but was more interested in exploring underhand methods and quick wins than in playing. So, I decided I'd learn to program and crack all the games I was interested in (especially MMOs, becoming a legend in the process).
Even though I made this decision, I actually learned coding the boring way: on a black board in a course at school.
My first language was Delphi. Not the worst choice, but at the time, the community was already fading, and it was difficult to find other Delphi programmers in forums.
After Delphi, I learned JS and PHP, and that's what has kept me moving until today, writing code every single day, creating websites, apps, games, etc. Creating the front for projects, stores and small businesses felt good and motivated me to go on.
Q: What is the most interesting project you’ve worked on so far in your career?
Marco: I'm 27 years old, so my career obviously isn't a long or glamorous one, yet. I haven't worked on many big things. Most of the time it was small projects with me being the only one working on them. Maybe being in an IT department full of administrators and supporters was part of the problem, but being the guy who can program lead to me doing all kinds of projects.
I wrote a PowerShell script which does all the server backups and it was used for many years. I wrote a PowerShell script which would shut down entire datacenters in case of an emergency. These projects were student projects for me, and they were the really cool stuff.
When I became a regular employee, my job was to administrate scanner mobile computers running custom scan software, which would transport scannings to the SAP system. The good part: I had a lot of freedom: I could do whatever I wanted and I was paid for it.
I started plans to create some cool stuff with this application - think the whole Industry-4.0 palette, with AR, transport tracking, etc. I wasn't really lucky, it seems, because the company was merged into Bosch, and the project was frozen in favor of the software already running at Bosch.
By far the most interesting project, is the one I am working on at the moment, with a big team of developers, architects, project managers, etc. We are developing the spear-head of IoT at Bosch, and I am very excited about being part of the project and unveiling it to the general public. For me, it's the first consumer product I am developing at a corporation or big company.
Q: Which technologies do you use and why did you pick them?
Marco: I try to be open, using the best tool for the job, and finding a harmony between all the tools I use. That's why it' i's difficult to make a list of things I use. It changes all the time.
For now, my most-used tech is TypeScript for sure. I use it everywhere web. It feels right at home: easy to use, cross-platform, typed with lots of goodies, like
interfaces. Gotta love them.
The other big tech I try to use for everything else (and sometimes the same stuff) is Rust lang. It's a very sane language for modern hardware architectures, fixing problems we've been having from the start (null, parallel computing, good code sharing, etc.). I mainly use it for my game, though, together with the Amethyst game engine. A modern, good fit!
Other than the languages, I guess I'm like everyone else - maybe a bit more minimalistic, relying way more on vanilla than others, but also just using git, JetBrains IDEs, mainly Linux and Windows, etc. Just ask a question about tech on Hashnode and I will gladly go into the tiniest details of what I use and why ;)
Q: You wrote about game development on Hashnode. What game(s) have you worked on so far? What advice do you have for devs that want to go into game development?
Marco: My dream has always been to create a MMORPG at one point, so that's what I am mostly working on. It is important to create what you want instead of always telling yourself that you are not good enough, yet, or that the project itself is too big. Dreams are important!
However, in the beginning, I started out smaller. To get a feeling for games, I wrote text based games, simple 2D classics, like Snake, Space Invaders, Pong, etc. From today's perspective they are single-day projects, but at the time they helped me advance my understanding and try things.
I'm currently writing two GameDev from scratch article series (one for Rust, one for web; both of which only have their first article so far), which I want to use to recreate my path of learning to create games for everyone.
I want people to know how to advance and why certain things came to be and how they are done today. I hope to release more articles soon, so you can create your own classic games easily to brag before your friends and family - and later on create modern indie titles in your garage! It's not hard, but you do need to take a small journey to get there.
Q: How did you find out about Hashnode?
Marco: I learned about Hashnode back in 2016. I just finished my first studies and I didn't have a mentor. I felt like it became increasingly harder to improve myself just with my knowledge and projects alone. I was in need of feedback by people far more knowledgeable than me, so I searched the web.
There was a number of forums, most of them rather small with only very few posts a week. And there were platforms, which mainly answered problem questions. And there were platforms which mainly released articles. None of them felt right, none of them was what I was looking for. And then one day searching the web I stumbled upon "Hashnode."
Q: Why do you enjoy spending time on Hashnode?
Marco: Upon discovering Hashnode, I thought that I wasn't qualified to write or answer on a platform full of professionals with years of experience. However, slowly, I started to ask and answer questions.
I wouldn't say that any of my posts back then were very good (and if you happen to find one, please, have mercy haha), but just conversing with other people about the topic I love helped me a great deal to see my shortcomings. I was able to solidify my basics, learn new things, get to know other people, and most importantly, giving back is an amazing feeling!
By now, Hashnoders feel like family. I know quite a few of you, what you do, what you think, what you like or dislike. It pains me whenever I see people not posting for months.
On top of that, I often talk to the Hashnode team. They are a great bunch of people, who have to deal with all of my annoying bug reports and ideas. However, they always try to make Hashnode the best platform, and that's what I love about Team Hashnode. That's why I love Hashnode and why I stick around!
Q: You're one of the most helpful Hashnoders. What motivates you to contribute to the community? Also, when do you usually hang out on Hashnode - during your breaks or after work?
Marco: For me, writing and helping have become habits. In the beginning, I mostly did it for myself. To learn, improve, evolve
and take over the Earth.
Now, I want to not only put my knowledge to use, but also share it with everyone! I want to be able to help, the same way I want others to help me when I need help. After all, there are a lot of things I cannot do, and I have to depend on others in such cases.
Now that I have this kind of habit, I do it all the time. Whenever I have a free minute, I refresh Hashnode. I open interesting discussions in tabs to answer them later, when I have more time (breaks or after work). I bookmark good articles. Basically, whenever I am awake with a desktop or laptop around me, Hashnode is one of the platforms I keep open, even if it is just to check the latest stuff.
Q: Where would you like to see Hashnode going in the years to come?
Marco: I know that this will probably never work out anymore, but I would love to see Hashnode kind of going back to the roots. By that I mean back to how it was when I joined. Mainly, lots of discussions. I am so sentimental... but I enjoyed my time back then. Today, I see so many articles pop up, and I often miss a good conversation about simple or difficult problems - or just chit-chatting. I think that was possible, because the community was still small and hyped about a brand new community with all the possibilities - and it was a lot more work to (re-)publish stories.
The other idea I have is that Hashnode becomes more general. Sure, I love to talk about programming, but I think there are other areas and topics which deserve just as much love and might gain from a community like this. Think about administration, hardware development, or even something like handicrafts (with nodes, like "Sewing", "Blacksmithing", "Cosplay", etc.). I guess something like that would require a lot of effort, and a very long term goal, if at all feasible.
Q: What advice would you give to a person that’s just starting out as a developer?
Marco: If you are just starting out as a developer, do what is fun. Having fun should be your #1 motto.
Let's not be over-optimistic: Programming is logic, and logic is boring. So, in order to make the right kind of thinking your second nature, do projects and tasks which you like.
Want to build a game? Go and build a game! Want to write a Kernel? Just do so! You will be able to find tutorials on the internet which guide you a good length of the way, and because you really want it, you will learn to search and you will learn to use the results.
All the knowledge will start to accumulate and before you know it, you will be sitting in front of the computer like a maniac, practicing developing every day.
Never give up. Stick to it. If it's no longer fun, ditch it - at least in the beginning until you find more ways to motivate yourself and sit through tough problems ;)
Marco, thank you for taking the time to answer our questions and contributing to Hashnode!
We hope you enjoyed finding out more about Marco as much as we did. To keep up with future stories, follow the Dev Spotlight series, meet and follow Marco Alka and other helpful Hashnoders on this page, and please share any comments or questions you may have for Marco in the comments below.