Yes, I love interviewing interns. I’ve met people who were less than impressed about this fact, claiming that I was losing valuable time because interviewing interns is very straightforward. I strongly disagree, I find it somehow more challenging to discuss with a student than with an experienced senior executive. I’ve learned a lot from these interviews and I will never stop meeting interns before they join our team.
This article is dedicated to our interns and comes with hands-on advice that you might find useful before your first day at 4PSA.
What’s our challenge?
We want to change the landscape of communication and collaboration in teams. In theory, this issue is already solved. In reality, it’s a very complicated problem and the proof is that no one has solved it yet.
Humans are exposed to an increasing number of communication channels that keeps getting higher. Most popular online platforms pack communication and advertisement altogether, building up confusion and raising communication barriers among users. Basically, this lowers the quality of collaboration.
Teams are most exposed to this problem because people develop natural resistance to digital communication. Yes, they will discuss a lot, but at the end of the day it’s collaboration that truly matters.
We are on the verge of fixing this issue by focusing on processes that:
- make communication open and available everywhere, yet not disturbing
- use the power of the machine to make decisions in the name of the user
We use the power of the cloud and created a new platform called Hubgets for this purpose. Hubgets learns about users in order to help them communicate and collaborate, not to serve them the best ads.
The first thing you will probably notice on your first day at the office is that we walk barefooted. You will embrace this too. Why do we do this? Mostly because it’s much more comfortable and healthy. On a side note, do you know that shoes are one of the most important status symbols that go back in history for centuries? We don’t need artificial symbols.
Telling the truth is uncomfortable and we highly appreciate people who are not afraid to speak up. We are a very flat organization so everyone is free to speak their mind. Being flexible and not change resistant is a very good sign of superior intelligence.
No mood spoilers
We don’t like mood spoilers in the office. Happy people will try to make the unhappy ones feel better, but this takes a lot of effort and many times it’s simply not efficient. Anyone can have a bad day, and that’s why you can take the day off when you are in a bad mood. We call this day No mood for work and it’s fully supported by the company.
It’s a library
While our office is a big open space, it’s surprisingly silent. Working in a loud environment is very non-productive, that’s why we try to keep discussions local. If this is not possible, there is always the alternative to use a meeting room. Or maybe the gym.
We care about small details. Your work will be greatly influenced by this. A simple it works (on my machine) is not enough.
Most of you mentioned that you want to work over the summer to learn more. I can understand the background of this idea; it’s one of those things school is very good at pushing into people’s heads. As humans, we learn every day, we just have to extract information from everything that surrounds us. In this age information is widely available, so there is no problem learning. The bigger issue is correlating various pieces of information and putting information to work. These are the main benefits of this internship.
Don’t let the stack scare you
Our stack is pretty complex. Because we deal with everything from the cloud backend to the client device, we use a lot of tools to do the work. These tools might seem intimidating at start, but this is just the surface. It’s much more important for you to understand the process and how things interact.
Some of these tools are written by us, many others are third-party. We take what’s good and incorporate it in our architecture. We maintain and patch a lot of open source software and we try to use for each task the best solution available.
Deal with the problem, not with the language
Unfortunately, school offers a pretty limited exposure to programming languages and builds a lot of false ideas. Most of you declared that you prefer C because you can use it to build the fastest software, as you can control everything.
In software engineering, the approach is not very productive. Indeed, C gives you direct access to many low-level resources, but there are even better alternatives if this is what you need. For example, assembler can beat C in this game.
The objective is to build software that does a good job. This means reasonable fast and maintainable, which translates into easily extensible. You do not write software and forget about it. You don’t even want this, because in the end no one will be using your software.
However, even if you want to build the fastest software, you might have trouble to do it in C. Many times, the program written in a higher level language can be faster, simply because the guys who built that environment were better than you at solving some of the problems. Or they had more time on their hands. You don’t have all the time in the world to polish and optimize your code and cannot build everything on your own. You will always rely on third-party libraries and it’s a very good idea not to reinvent the wheel.
In production, we use code written in more than six programming languages.
Ship now and ship again
We expect you to be able to push a feature or contribution into our platforms/stack on your first month here. For this purpose, we will assign you real tasks. As an intern, you will follow the same process as any 4PSA engineer and you will have the same responsibilities. The workload is indeed adjusted based on your skills.
My best advice
Actually, I have three. 🙂 Dealing with real-time communication, storing resources, manipulating, analyzing them and putting a system in production involves a lot of standards and technologies.
The amount of new information might seem incomprehensible. Truth is that you cannot be an expert at everything, but you can build a high-level image and specialize on what you like most.
If you don’t ask questions it’s very hard even for your mentor to understand your progress or to help you. There is no such thing as stupid questions and no one gets punished for asking questions. Most people simply miss opportunities because they do not ask. So do ask!
Show your interest early and do not hesitate to get involved. You can help – even your mentor needs help. I know that many times juniors are intimidated by seniors as they seem to know almost everything and seem to be able to do anything. That’s not exactly true.
And as a bonus advice – learn Git well. 🙂
Disclaimer: This article has been originally written for our internal wiki. We decided to make it public to also help future students who consider 4PSA for an internship.
To all our 2015 interns, welcome to 4PSA Cool Summer Internship 2015!