How does a graduate in economics end up developing software at cabify

Marta Vaquero · 5 min read

First, let me introduce myself: my name is Marta Vaquero, I am a programmer with 7 months of experience. I’m currently working as a Software Engineer in the QA Automation team at Cabify.

This may not seem like much experience, but finishing a web developer bootcamp has been a huge milestone for me as I didn’t have any previous experience in web development or programming in general. Also, I don’t have a Computer Science degree since I graduated in Economic Sciences in 2009.

I had never written about my experience. However, thanks to a project promoted by the company’s Diversity committee, I decided to change it. Today, I am going to tell you about the reasons for the change in my professional career and how Cabify influenced it.

Economics

Once I finished my studies I started to think about my future…. and I decided to do a masters degree in International Trade. The main reason why I decided to specialize in this field was my passion for traveling.

After finishing the master, I realized that my professional vocation was not so related to what I have studied but to personalized attention, customer support and people management.

It was during the master’s internship, where I met a colleague with whom I discovered my love for customer’s support.

One day she told me about a position in her current company: Cabify. It was in the Customer Service department and she thought my profile might fit. The responsibilities were: administrative procedures, invoices and customer service.

I joined Cabify and, after some years, I was promoted to be a Team Manager: my manager emphasized that I was organized, I had a knack for people and empathized with the client.

Manager at Customer Service team

It seemed that being the manager of the customer service team was my vocation, I was comfortable with the job and I liked it.

It is true that sometimes you ask yourself if there is a relation between my job and studies, but after the satisfaction of the work done, one quickly forgets the question.

After several years as a Manager, one day the Head of Product, Roberto Pérez, asked me if I would be interested in working with his team, in the QA area. Undoubtedly my first answer was: NO. I was not ready to work on that team since I had no knowledge of programming and, furthermore, my English was not as good as I would like. My answer was quick but that question stayed in my head for several days, weeks, months…

As time went by, my daily work was less dynamic and few things were new. This meant that I did not think much and worked mechanically. This may be the point that made me consider: why couldn’t I work in the product team?

There were several colleagues that had previously moved from customer support to QA team, so I asked them for feedback to decide if I could be ready for the change.

After some thoughts, I jumped into the change! The company was the same but the department movement meant a lot of changes: routines, tasks, knowledge, language…

Quality Assurance **and Product Support

The work in the QA team consisted of assuring the quality of the development carried out by the engineers, in a testing environment, before it reached the client’s App. In addition, we took care of supporting the product team, helping, among other things, with issues and documenting the new features developed.

You will wonder what are the reasons for what I was chosen for this position. Well, the experience in the Customer Service team for 4 years made me an expert using both apps (rider and driver) and the internal website. This allowed me to carry out more exhaustive tests since I knew a lot of use cases for each bug or feature. And above all I put myself in the client’s shoes (rider and driver) when testing it.

At first, working with developers was difficult. I did not understand the words they were referring to (feature, core, branches, sprint, slider, deploy, master…), but there comes a time when all that vocabulary becomes part of yours. All this aroused a new interest in me and I started to do simple programming courses: Ruby, Command Line, Git, Javascript, testing for web development, Python…

Source*: QualityLogic*

One day a company email arrived stating that scholarships were being offered for web programming studies at the Ironhack school. From signing up for the scholarship to a pre-selection email, previous course, test, interview and … ‘You have been awarded the 100% Cabify scholarship to carry out your programming studies at Ironhack’. YUHUUUUU!!!

Here, the impostor syndrome appeared again: will I be ready? Will I be valid? What does this have to do with my studies? Aren’t there many changes for such a short time?

Finally, I started my part time Web Development course in January 2019 at Ironhack and ended in July of the same year, combined with my full-time job at Cabify. Ahh! We added two more months of work to present the end-of-course project at the Ironhack Hackshow (event in which the two winning projects of each group are presented).

At the end of the course, there were several colleagues who asked me: when you finish the course, in which team do you want to work? Will you work as a developer? What will you do next?

Software Engineer — QA Automation

At the end of the course, my Manager indicated to me that the QA team wanted to go from having manual to automatic integration tests. She proposed to me to start in my current position: to do automatic tests of the driver App so that they are executed daily and automatically to verify that the new changes are not breaking anything in the application.

In the bootcamp we learned about the following tools/languages: javascript, HTML, CSS, NodeJS, Express, MongoDB and React. All these tools allow you to get a view of various fields, both backend and frontend, but then you need to deepen your learning. You must be aware that when you start working you will find very different things and be willing to learn other languages ​​and/or technologies.

In these 7 months working as a Software Engineer, there have been many new challenges that I had to face, learning a new language (Ruby), learning to use tools such as Appium, Cucumber, understanding the possible tests to automate and especially to prioritize to start with easier tasks. Furthermore, I find myself constantly learning new tools and methods.

The first automation task I did was to automate the login process in the Cabify driver application. It is true that, at the beginning, my ideas were to cover all the use cases from the first test. Then, you realize that the task must be simpler and start by doing the happy path of that login (simple test that complies with the functionality so that the action can be carried out).

This may not be learned in the bootcamp but when you face the job you realize that the small tests are completed with others and become a battery of tests that covers all use cases.

Analyzing the evolution after these months of work, I find it gratifying to see how the tests that I have automated add value to the product and remove the manual and tedious previous work. This reinforces the decision to accept the new role.

Personal Note

The important thing is not where you started or what your studies are, but let yourself go and follow what you like and make you happy. Every change takes effort, but when you get the results, satisfaction grows enormously.

I would just like to say that this journey is not over and there is sure to be a long professional growth.

Join the Cabify team to help us to build our product.

Marta Vaquero avatar

Marta Vaquero

Android Engineer

We are hiring!

Join our team and help us transform our cities with sustainable mobility.
Check out the open positions we have in .

Visit our careers page