Surviving in the software industry: Like a fish out of water

Lucas Miotti
Wolox
Published in
3 min readFeb 25, 2019

--

My background knowledge:

Studying electronic engineering means, in a way, that you have to work with discrete components, such as resistors, capacitors, transistors, to build a more complex circuit. Every little thing in our lives has at least a small circuit. It’s very simple to watch and detect which things don’t work with electricity, a simple LED implies that there’s a circuit behind it.

Nonetheless, electronics are not only designing circuits. The implementation of microcontrollers obligates developers to create software to run on them and acquire knowledge to improve their abilities in writing programs. Moreover, disciplines such as signal analysis require the creation of small scripts to help to understand the behavior of some phenomenons. Thus, electronics are not far away from the software industry, however, someone who has studied informatics as a career will have the knowledge and ability to code with more complex structures and architecture.

Life at Wolox:

The decision to apply for a software engineering job was a big decision, as I mentioned before, programming was not one of my strengths. The admissions exam consisted of different stages and one of them was programing skills. Basic concepts like conditionals, loops, lists, and recursion were tested. I was really surprised that I successfully completed most of the exercises. Thus, I realized that the same basic components were required to pass their tests.

Having passed all phases, Wolox welcomed me to the company as a developer. My previous job was so demanding with my clothes, and entering and exit times that I was really astounded by how different the Wolox culture was: People come to work wearing what they want, and they have flexible hours. However, the main issue was the tools they suggested that I used. I had never used them before! Being assigned to Wolox’s Android department meant that I had to learn a lot of new stuff, such as activities and fragments flow, MVP architecture, Java, Kotlin, Github repository, etc.

When the first month ended, I couldn’t believe the number of new skills I had learned. My first Android app used Tabs, RecyclerViews and was able to make tests and requests to an external API. All stuff that was supposed to be hard to learn, was broken down into smaller tasks to make them easier to achieve and fortunately, trainers were always available to answer every silly question I had.

A year in the software industry:

After almost a year of Android programming, I can make a better summary of the things that I find easy or difficult to achieve. As far as project organization is concerned: defining which tasks will be done, detecting tools that can be used and dealing with other technologies to achieve the work to do, have become a minor problem. However, the biggest nightmare that my studies didn’t prepare me for is the ability to abstract implementations and to use the best practices. For example, does object rendering have to be made inside a Fragment or a Presenter. This is something I’m still working on and I’m quite sure it will be solved in no time.

Furthermore, I have contributed to Wolox’s Android department by resolving bugs for Google maps, training new employees in the same department and with an research project about “Navigation Architecture Component” which will help, in the future, with transitions between Activities and Fragments in Wolox projects.

The purpose of writing this is to encourage other students studying electronics and similar fields to consider working in the software industry. I have met lots of students in the field of engineering who avoided programming. However, our world is growing exponentially and is bringing lots of fast solutions to discrete electronic designs which is creating lots of job opportunities for young developers!

--

--