Back to blog
personal career self-taught mexico

About Santiago García Arellano — Self-Taught Full Stack Developer from Mexico

The story of a self-taught developer: from dropping out of school to landing a full stack role. Education, bootcamp, burnout, and what it really takes to break into tech.

· 8 min read
Markus Spiske photo

About Me

I am 26 years old and was born in Mexico City. Most of my life has been spent in Mexico City, but fortunately I have had the opportunity to travel and visit other states in my country. I love music, video games, movies, and anime. I also enjoy reading and photography. I consider myself a creative person and passionate about technology. I like to learn new things and share my knowledge with others.

export const santiago_info_en = {
  'full_name': 'Santiago García Arellano',
  'age': 26,
  'location': 'Mexico City, Mexico',
  'profession': 'Fullstack Web Developer',
  'passion': 'Passionate about technology and creativity',
  'interests': ['Music', 'Video Games', 'Movies', 'Anime', 'Photography', 'Reading']
};

Education

While I would love to tell you that I had an excellent academic record, the truth is that I did not. I was always good at learning things on my own, but school seemed too boring and slow for me. At 16, I decided to drop out of Vocational No. 5 Benito Juárez, which, being a school of the IPN (National Polytechnic Institute), was not a decision my parents took lightly. I lasted three semesters at that school, and it was in the last one that I had my first contact with programming, in the computer science and programming specialty.

To be honest, it was not love at first sight, but something interested me enough to retain certain knowledge that would be very useful to me in the future.

export const santiago_info_education_en = {
  'institution': 'Vocational School No.5 Benito Juárez (IPN)',
  'status': 'Incomplete studies',
  'comment': 'I enjoy learning on my own. At 16, I decided to leave school and follow my own path.',
  'learning_subscriptions': ['Platzi', 'FreeCodeCamp', 'Udemy']
};

Work

After leaving school, I had to look for work, regardless of the area, as I just wanted to avoid being at home doing nothing.

Thanks to one of my best friends at that time, I got a job in the administration area of a small company in Mexico City. It was not the best job, but it allowed me to learn new skills and adapt to a work environment.

After a few months, and thanks to my knowledge of graphic design, I got a better job through a recommendation from a vocational school classmate. This job sustained me for a couple of years and allowed me to work as a freelancer in my free time.

export const santiago_info_jobs_en = {
  'jobs': [
    {
      'position': 'Administrative Assistant',
      'company': 'Small company in Mexico City',
      'duration': '1 year',
      'learnings': ['Document management', 'Organization', 'Teamwork']
    },
    {
      'position': 'Freelance Graphic Designer',
      'company': 'Self-employed',
      'duration': '2 years',
      'learnings': ['Graphic Design', 'Customer service', 'Project management']
    }
  ]
};

Returning to programming

It was not until 2021 when, by recommendation of a third party, I learned about a free programming bootcamp that had a presence in several countries and had just concluded its first cohort in Mexico, specifically in Guadalajara (GDL).

I signed up and went through the selection process, which consisted of an exam and an interview. I was accepted and started in May of that year.

It was three months of intensive learning, working in a team of four people, which was unusual, as most teams had six or more members. Despite that, we managed to be one of the best projects of that cohort.

At the end of the bootcamp, I decided not to look for a job immediately. I wondered how prepared I could be with only three months of training, to be on par with an engineer.

So I chose to continue learning on my own. Since August 2021, I started my subscription on Platzi, an online education platform that has helped me much more than I expected. I also used other resources such as FreeCodeCamp, Udemy, among others.

I remember that stage with great affection, but also with some regret. I studied day and night without rest, knowing that this was the key moment and that I could not waste the opportunity to learn as much as possible. I studied 8 to 12 hours a day, including weekends and holidays. Instead of going out to celebrate, I stayed at home studying.

I reached burnout and, although I knew I had to stop, I decided to keep going. I went through moments of stress, frustration, and some anxiety, wondering if all the effort would be worth it. But, as I mentioned before, I had already started and could not stop.

export const santiago_info_bootcamp_en = {
  'bootcamp': {
    'name': 'Programming Bootcamp',
    'location': 'Guadalajara, Mexico',
    'duration': '3 months',
    'team': 4,
    'outcome': 'One of the best projects of the cohort'
  }
};

Job hunting

In January 2022, all my friends told me that I was ready, that I had studied and practiced enough to get a junior job. So I decided to start looking for a job. Fortunately, in less than a month, I went through a complete process that included a test project and a technical interview. The project consisted of a full stack inventory application, where products could be added, edited, deleted, and viewed. I was allowed to use any technology, and I chose React for the frontend and Node.js for the backend.

I documented everything clearly, and the code was quite clean. I received congratulations for the work I did.

In the technical interview, I was asked basic questions about JavaScript and React. Although I did not know everything, I was able to answer most of the questions.

In the end, I was offered the job and accepted.

The bad news was that, not having a university degree, they could not hire me, not even as an intern, so the process had to end there.

export const santiago_info_job_search_en = {
  'job_search_start': 'January 2022',
  'reason_for_search': 'My friends told me I was ready to get a junior job.',
  'selection_process': {
    'duration': '1 month',
    'phases': ['Test project', 'Technical interview']
  },
  'project': {
    'type': 'Full stack inventory application',
    'technologies': ['React', 'Node.js'],
    'comment': 'Clear documentation and clean code. Congratulated for the work done.'
  },
  'job_offer': 'Offered the job, but could not be hired due to no university degree.'
};

My first job

After not being able to be hired, I continued looking for a job, sending my CVs through different platforms. One day, at 5 a.m., on the recommendation of a friend, I found a Discord server where I saw a job offer. I sent a message to the person who posted the ad, thinking it was a recruiter, and provided the data they asked for.

Perhaps the most challenging thing about this job was that everything was in English, as it was an international company, but I trusted that I could do it.

The technical interview was a bit unusual, as the position was for React, but upon arrival, I was informed of a surprise. After a few questions about state management and some hooks in React, I was told that the interview would be in Svelte.

I was given a brief introduction to Svelte and asked to consume a company API with Harry Potter data, showing the results with specific formatting and UI. Although I did not know Svelte, I managed to complete the task. Even in a question about the use of sort in JavaScript, it took us quite a while to solve it — not even the interviewer knew how to do it. We checked the documentation and finished the project.

Two days later, I had the option to choose between three jobs: one at BBVA Mexico, another at a multinational eCommerce, and the last at the international company. I chose the international company because I thought that being in English and remote, I would have the opportunity to meet more people and learn more.

I started on March 14, 2022, and finished on August 16, 2024 — looking for a new job, as I felt I had offered all I could and could not find more challenges in the company.

export const santiago_info_tech_job_en = {
  'first_tech_job': {
    'position': 'Junior Web Developer',
    'company': 'International company',
    'technologies': ['React', 'Node.js', 'Svelte'],
    'duration': 'March 2022 - August 2024',
    'experience': 'First full work experience in English and remote.'
  }
};