DEV Community

Gabriel Barcelos
Gabriel Barcelos

Posted on

Why I'm Starting to Write: A Journey Into Software Development

I'm starting this writing to share my journey, challenges, and insights with the software engineering community. After reflecting on my career, I realized that, despite years of experience, I had little to show or document my growth. This is a way to change that - by not only documenting my path but also giving back to the tech community. In this post, I'll explore how I discovered software development, my experiences in the field, and the key moments that shaped my path.

How I Discovered Software Development

My entry into the software development world wasn't premeditated. At 16, I found myself at a crossroads: accept a job offer that could be my first step into the working world or take my uncle's advice and explore a software development course. Choosing between a steady paycheck and the uncertainty of programming was one of the hardest decisions I've ever made. Yet, something about development intrigued me. With a mix of excitement and fear, I took the leap of faith and decided to study. Little did I know, this decision would change my entire life.

From that moment on, I was captivated. The more I explored development, the more I realized how much I enjoyed the challenge of problem-solving and creating. Every new project fueled my enthusiasm and deepened my appreciation for the learning journey. This path not only solidified my love for technology but also paved the way for my professional journey.

My Early Career

After diving into development, I was fortunate to gain industry experience relatively quickly. Working at companies like Croct, Troupe, and Avanti helped me develop a well-rounded skill set, enabling me to grow as both a front-end and full-stack developer. Early on, I opted for JavaScript and TypeScript as my primary tools.

JavaScript was the first language I learned during my course, so it became my natural choice for development. Its flexibility and vast community support made it easier to dive into real-world projects. However, as I progressed, I started noticing the limitations of dynamic typing in JavaScript, especially when working on larger or more complex applications. That's when I turned to TypeScript.

TypeScript introduced a new level of reliability to my code. With its static type system, I could define types upfront, which reduced runtime errors and made the codebase easier to refactor. TypeScript's type safety allowed me to catch potential issues early in the development process, significantly improving the maintainability and scalability of the projects I worked on.

I chose React for front-end development due to its component-based architecture, which makes building complex user interfaces more intuitive. For the back end, I opted for Node.js because of its compatibility with JavaScript and its capacity to support scalable applications. These technologies not only aligned with my desire to work efficiently but also allowed me to continually learn and push the boundaries of what I could create. Each project sharpened my skills and deepened my understanding of how technology can transform ideas into reality.

Ireland: A Transformative Experience

In 2022, I made a significant decision to live abroad in Ireland. My main goals were to learn fluent English and explore European countries. Stepping out of my comfort zone was essential for my personal and professional growth, and the experience exceeded all expectations.

During my time in Ireland, I embraced a wide range of cultural experiences and expanded my horizons. I traveled to 15 new countries, exploring new places and meeting people from different backgrounds. The cultural immersion helped me understand the world better, and it also improved my communication skills and adaptability - both essential traits in an industry that thrives on collaboration and innovation.

This phase of my life taught me that growth often comes from unexpected experiences. The personal insights I gained during this period influenced my professional perspective in significant ways.

Why I'm Writing Now

After realizing that I had little to document my journey, I felt the need to start sharing my experiences, not just to reflect on how far I've come but to offer insights that can help others along the way. Writing helps me synthesize my thoughts, and I hope it will also serve as a medium to connect with like-minded professionals.

My career has been an exciting journey filled with learning and challenges. By sharing my thoughts, I aim to contribute to the knowledge pool that has helped me grow over the years. For those in similar situations or just entering the field, I want to offer encouragement and perspective. Software development is more than just writing code; it's about constant learning, embracing challenges, and discovering insights along the way.

I look forward to sharing insights into technical topics such as JavaScript, TypeScript, and React while reflecting on my personal growth as a developer.

Top comments (0)