Web Development - Santo, Guilherme Ferreira (2023)
In this thesis, I describe my journey during a nine-month internship at xgeeks. The dynamic nature of modern software development has elevated the role of a Fullstack web developer to a pivotal position. As I embarked on this internship, I faced the challenge of transitioning from a newcomer to a proficient web developer. Motivated by the realization of web development's critical role in modern businesses, I eagerly embraced the opportunity. The internship took place in an environment where the role of a Fullstack developer was central, acting as a bridge between frontend and backend expertise, crucial for the seamless functioning of modern applications. By having good communication skills as one of my strengths, it allowed me to integrate seamlessly into their work ethic and diverse development teams. Throughout the internship, I contributed to three distinct projects. The first was SPLIT, an open source retrospective tool, where I was a Fullstack developer. The second project was Command Center, an application that served as a hub for various internal applications, where I worked as a Fullstack developer, but with more focus on the frontend of the application. The third and final project was a website for xgeeks’ yearly event called Geekathon, where I worked solely in the frontend of the application. All projects followed Agile development frameworks, such as Scrum, Kanban and Scrumban. In hindsight, the internship was a success because all objectives were accomplished. I transitioned from a novice to a proficient web developer by acquiring proficiency in a range of technologies and frameworks such as HTML, CSS, JavaScript, TypeScript, React, Next.js, and NestJS. The application of Agile methodologies in real-world development scenarios provided a tangible realization of my theoretical knowledge. Across all projects, I actively participated in idea generation, wrote clean and maintainable code, resolved bugs, and maintained effective communication within the teams. My internship experience at xgeeks not only solidified my career aspirations but also emphasized the significance of adaptability, continuous learning, and effective communication in the realm of modern software development.