Table of contents
No headings in the article.
Back in 2017 I was still in college. It was boring and I didn't learn much. I came to the conclusion that writing
C on a piece of paper isn't going to do much for my future, so I decided to try my luck in the real world.
I lived in a small city in a small country in South Eastern Europe. There was a total of 3 (three) mid-size companies in the entire city that employed all the programmers in the city. They also picked the best and brightest students from the collage for paid internships and possible full-time employment. Obviously, I wasn't one of them, so I took a different route.
All of my free time from full-time studying I invested in learning programming online. I even purposely avoided studying for college so I could focus more time and effort for online learning. I believed that some subjects taught there were simply outdated and pointless, and to this day I have no idea what some of them were about, years after graduation.
I literally wrote to every company in city asking for internship on their official Facebook page. And surprisingly, some of them were kind to answer. That alone made me feel so good, even though all but one were rejections.
One of the companies offered me to pay them a visit, to meet and have an interview. This was a shocker for me, because I've never been in an IT company before. I didn't know how does it look inside, nor what kind of people are working there, not even what they do there at all. For me, being a shy and awkward kid (kid in spirit, biologically not so much) that was the scariest part of all.
This was the comfort zone I needed to step out from.
They sent an online assignment for me to do. It was a couple of algorithmic questions. I was never good with algorithms, so I did what I could. What I could not do, I did the best of my abilities, and wrote in comments what I didn't know, what stepping stones I had, and my reasoning for the solution I came up with, even though it was wrong. I believed that they are not looking for the solutions, they already knew better than I do, but instead, they wanted to see my thought process, logic and reasoning. So I wrote a lot of comments explaining what and why I did in the code.
And it turned out I was right. I got some answers right, but not all of them. Regardless, I received the invitation for an interview.
When I got there, HR lady welcomed me and led me to the empty office where we sat down and had a talk.
It was a casual, friendly conversation. No stress. She was telling me about the company, and I was telling her about myself. Just like you would meet a new friend over a coffee.
She didn't ask me anything tech related, only my interests, what I've been learning and what I wish to learn. I guess she was more interested to learn about my personality rather than knowledge.
She asked me one technical question though, at the end of our conversation. The question was: "Can a constructor be private?" I knew what a constructor is, and what private methods are, but the combination of two never occurred to me before. It was food for thought. (Yes, constructors can be private)
When she had no more questions, she left and two guys came: a senior frontend developer and a senior backend developer.
It was my first time ever meeting real developers in person.
They did ask me a lot of technical questions. Majority of questions were in the form of "what is x and what can you tell me about it", x being any technology they were using in their day to day work:
- HTML, CSS, SCSS
There were also some technology specific questions, for example, what are primitive types in Java, and a trick question, what is a string in Java, for which I proudly answered it's an object, not a primitive type, having read about that just a few nights before.
I knew the answers for the majority of questions, and all the answers I have learnt online for free. The only question I didn't know the answer for, to my memory, were design patterns. And I haven't learn them up until recently, years later in fact, unfortunately.
The dev guys seem to be happy with my answers, so they left and the company director came in. He was the guy in charge for the entire office. He greeted me with a smile and sat in front of me. Just like with an HR lady, the talk was easy going and friendly. He asked me about my interests, what have I done, and what I would like to do in the future.
I told him about my college studies, my self-teaching efforts, some of the simple apps I have build and that I want to learn as much as possible from the people who have more knowledge and experience than me.
He really liked that answer, and especially he liked the fact that I reached out to them, not vise-versa. He then said that the company is already planning an internship programme for the students of the local university, and I came just before they planned to start scouting for interns. Therefore, he suggested that I should be the first student in this programme. Also on top on that, he asked me to invite some of my friends so we could make the first internship group and start right away.
I did refer 2 of my friends to them, they went through the same screening process like I did, and they both passed. So we formed a group and officially become the first generation of interns in that company.
On the first day, we got our own office, where we worked on an in-house project. We also each got a mentor, whom we could ask anything we didn't know. It is in that moment I realized my knowledge at the time was negligible. There was so much more to learn, I wouldn't even know that was the case if I never came here.
That was the start of a whole new life for me. Life with constant learning, struggle balancing work and studies, ups and downs. It was worth it, because it was a great investment for a much better future.
So if you are at a similar stage in your life and just starting out, I see you. As you can see, been there - done that. So if you have a question or two, I will be glad to help you. You can hit me up at email@example.com