Experiences From My First Job
TL;DR
During my time at TITSA (a public transport company), I learned to:
- When starting a project, don’t focus too much on the theory and start hands-on with a prototype
- If you don’t understand the requirements of a task, asking can save you hours of useless work
- How to work effectively within a team of programmers
And gained technical experience on:
- Data processing with Python, Pandas and SQL
- Creating machine learning/deep learning models (predicting passengers, cluster workshop inventory…)
- Automatization scripts with Python, like RPA’s
- Visualization with PowerBI
- Data Analysis
Intro
Last week I finished my first job in the Big Data department at TITSA (Transportes Interurbanos de Tenerife), and I wanted to make a post to reflect on the past 10 months, to explain what I’ve learned from the experience, both the positive and the negative.
Lessons learned
During my time at TITSA, I realized that I sometimes struggle to start new projects because I focus too much on understanding the theory, the problem itself, and the tools required to solve it in depth. However, in many cases, that level of understanding isn’t necessary to make progress. I’ve now come to understand that it’s not always essential to go that deep from the start. Sometimes you don’t need all of that, just diving in and getting hands-on building a simple prototype and working your way up from there is the most effective approach.
At the beginning, I often hesitated to ask questions when I didn’t fully understand something my boss asked me to do. Instead of seeking clarification, I would spend a lot of time trying to figure it out on my own, sometimes even building multiple versions of a solution just to make sure one of them matched what was expected. In hindsight, I realize that a simple question could have saved me hours of work and uncertainty. I’ve learned that asking early can be far more efficient than assuming a task.
Technically, I gained solid experience in data processing with Python, working with real company data such as passenger records and workshop inventory. I also automated several internal processes using Python scripts, which helped improve efficiency and reduce manual workload. Additionally, I developed machine learning models to make passenger demand forecasts and to cluster workshop items based on their consumption patterns. On the visualization side, I created dashboards with Power BI to help different teams better understand key metrics, and I built internal applications using Power Apps and Power Automate to streamline operations.
Conclusions and the importance of version control
Looking back on these past 10 months, I’ve not only grown technically, but also developed a much better understanding of how to work effectively within a team and in a business environment. I’ve learned to balance theory with action, to not be afraid of asking questions, and to approach problems with a more pragmatic mindset.
Regarding the department, one area that could be improved is the lack of proper version control systems for both code and task management. On more than one occasion, I found myself asking colleagues for scripts or tools they had developed months earlier, and often no one remembered where the latest version was or what had changed since the last iteration.