[Internship] When computer engineer student became intern 1st time.
Few months ago, while I was doing a project with my friend, there was a person contacted me in Facebook. She said she is from Donuts and saw my skill in SPOJ account (which surprised me how did she find it), so she offered me an internship. Since I was learning about web developing, I accepted the invitation. And so, the epic intern began…
But before that…
Of course, there was a test. The test was sent via email, consists of 5 problems which cover the data structures and algorithms topics. There are various kind of problems, from normal coding to debugging, with no feedback (similar to Codeforces contest). Since the problems resemble those in Olympaid camp (the difficulty is about 2nd POSN camp), it was not hard to get full marks. (In fact, I was worried a bit because it’d been a while since I practiced on those kinds of problems).
After finishing my test, she (the same person that contacted me) told me that her boss wanted to have lunch with me. At first, I was worried because I thought this would be an interview. However, it was more relaxed than I thought. We just had some talk about works and fields of interest, then I began my internship many months later.
What did I do here?
There are mainly 4 projects in Donuts BKK, including Sistacafe, Estopolis, Jobcan, and Vibie, and many positions for each project, such as front-end developer, back-end developer, UX/UI designer and much more. In the beginning I chose to work in Jobcan, but there was no jobs now. Therefore, I decided to work as back-end developer in Estopolis, which is about real estates marketing.
It began since the first day…
Not sure whether I was lucky or unlucky, because the first day I started my internship (1/7/2018) was the first day the office was relocated and we needed to set the new office, so it was quite chaotic. Also, the last day being an intern (31/7/2018) is the day we needed to deploy our new features.
The first impression is that the office was smaller than I thought (I just imagined a very big office before I came here), but I prefer this way because the less people, the merrier it would be (or not…?). Moreover, seniors are very friendly and easygoing, which is what I like.
I was quickly familiar with this company so that I forgot the pressure I felt on the first day. Thanks to the relaxing atmosphere.
On the second day there was already a task for me, and the complexity was increasing for every tasks. When I worked, I had to open the documentations and Stackoverflow (the god realm of all developers), and I think the most effective way to learn is to learn from seniors’ codes. This is an essential skill for every developers.
We had meetings about the project almost everyday. Some days I came to work just for meetings and not coding. I was flustered and stayed silent on the first few days, but then started to suggest more ideas over time.
Impression in Donuts BKK
1. Very comfortable open workplace.
Not too crowded and good air flow. Perfect for creative thinking.
2. Free drinks. Free snacks. Free kitchen.
Not surprising if I gain weight after internship, because there is a snacks corner which is replenish every half month. Truly first come first serve.
3. Seniors are very friendly and easygoing.
As mentioned before, every seniors are willing to help me when I was in trouble. Sometimes with snacks (the root of abundance)
4. Came as intern, work as staff.
Although being an intern, team members regarded me as a real part-time/full-time employee, maybe because the company wasn’t that big. But of course, the tasks I got were minor tasks since I was in learning period.
What about something I didn’t like?
1. The restroom
Here was a new office, so new that the restroom wasn’t well-constructed yet…
2. So many dusts!!
Where did these dusts come from? (Breathing the fresh air, full of dusts.)
3. The monitor
The ancient monitor with distorted color. Might have some headache when reading codes from the screen.
What I learned so far?
Probably the most important topic, because they are the reasons I came here.
1. Developer skills
This one is pretty obvious, and the most technical stuffs. There were so much different between before & after, including new frameworks and concepts which can be applied to other projects. Let me list them here so you can search for more information.
- What is MVC (http://www.tutorialsteacher.com/mvc/mvc-architecture)
- Laravel framework (https://laravel.com). I mainly focus on Database and Eloquent ORM topics.
- Database normalization (https://www.studytonight.com/dbms/database-normalization.php). The most practical one is 3NF.
- Writing API docs using Postman.
Nevertheless, excellent frameworks and fabulous languages are nothing if you don’t understand the concepts and basics, which I experienced it myself. When I understood the core concepts, the following topics will be intuitive. So remember:
Concepts are the foundation of everything.
2. Communication skills
Achieved when reviewing codes with seniors. I had to explain why we developed this feature, what do these codes do, what are the potential bugs, is it support future growth, and more. It is crucial when working with team and working on large-scale project. Furthermore, this helps us identify points we don’t understand in short amount of time.
3. We need to be thoughtful before doing something.
If the new feature we are developing will not make much impact to users or customers, then it is not rational to waste resources to develop it, not only programs, but also marketing campaigns or new products. Therefore, we must consider from many perspectives and doing researches before deciding.
4. There are many skillful people out there, go to find them!
You can buy almost everything in the world, but not knowledge and experiences. The only way to obtain them is to really do it and find the person who did it before. Fortunately, here had many experienced people to give you some useful advises and exchange knowledge and experiences. (I was mostly a good listener because I didn’t know much about these stuffs.)
5. BTS is so terrible, very terrible, extremely terrible.
Not quite related to the job, but you will learn the hardship about going to work by BTS. It is unpredictable and crowded, especially in the morning.
6. Knowing strong points and weak points.
This can help you decide your future plan, because by being an intern, you will find another you which you don’t know before.
To summarize, if you want to come out from your comfort zone, this is a very good place to start.
Because experience is achieved by doing.
Bonus!! If you want an offer… (For computer Olympaid students)
The reason I got an offer is because of many online judge websites (SPOJ for me). Therefore, practicing in various websites increases the chance for recruiters to discover you. As for Donuts BKK, there is no need to worry about the test, like I said before. You just need some basic knowledge about web developing.
Also, don’t forget to include your contact information, or else they cannot reach you.
For those who are interested in internship with Donuts BKK, follow this link for more information and register from the website or email: firstname.lastname@example.org.