My professional journey
My professional journey, technologies, highlights and life-long impressions.
My professional journey
On this first blog post I want to tell you about my professional journey.
So much has changed since I finished university, doesn't feel it was 17 years ago, time really flies.
After four and a half wonderful years studying in Porto and a life changing six months Erasmus exchange programme in Brno, Czech Republic I started my professional career in Lisbon.
Accenture - Lisbonโ
I'm so grateful for Accenture giving me a first chance as a software/data engineer. With my degree on Electrical and Computer Engineering I definitely didn't feel I was ready for the challenges ahead, but I found a very supportive team that I really learned a lot with.
Going every morning with a suit on, to the beautiful offices in Amoreiras Tower, does feel a bit different from nowadays working casually dressed from home. Life as a consultant was different back then. ๐
I remember joining in Nov08 and having as a first challenge a data migration project with a very tight deadline (had to go live January first). The migration was configured on SSIS (SQL Server Integration Services) and involved moving all data from a client database to a generic SAP database.
As a junior Data Engineer I quickly had to improve my very basic university SQL knowledge to contribute to this project as well as learn new ways of testing and validating the ETL.
The migration was a success so 2009 started with new responsibilities.
For that same client, I started working on evolving their SSAS (SQL Server Analytical Services) OLAP (Online Analytical Processing) solution. Also known as a data warehouse, I built SQL and MDX (Multidimensional Expressions) queries, also taking tasks on SSRS (SQL Server Reporting Services) building reports for client analysts to access. During 2009 and 2010 I had my first go as a software developer. The client application was built on VB.NET (Visual Basic) and there I performed my first code changes, mainly bug fixes. Code was versioned controlled on SVN (Subversion), since then I always used Git.
I was lucky to have worked on a team of such smart individuals that fostered a supportive environment for my first steps as a developer. Special mention to lunch hour, we worked hard in the office but lunchtime was sacred, we all went together to this special hidden gem of a restaurant where food was beyond delicious. ๐คค
Quantium - Sydneyโ
After two years working in Lisbon, I decided to live and work in the country that I was born and was always curious to go (I left Australia when I was six years old). I didn't go to Australia with a job already locked, I decided to start looking for one once I arrived, and I was fortunate that Quantium believed in my strengths and employed me only three weeks after my arrival.
The environment I found was of a startup. This is, a small group of developers working with ambition and excitement, and very proud of their work.
I started working on a product for an Australian industrial gas company, that enabled account managers to go into rural areas without internet and obtain the RSP (recommended sales price) for their customers based on factors such as quantity and distance (a lot of actuarial work was put in the RSP). It was developed on C#, I took responsibilities mainly at a database level, building SQL views and stored procedures on a MSSQL Server database. Interestingly enough, despite English not being my first language, I quickly also took responsibilities on on-call support, being on the phone with account managers faced with the occasional issue on the app.
The number of developers was small (around 25) and we had a very relaxed environment. I felt welcomed and worked hard to deliver quality work on the SQL side while also learning how to develop on C#.
It was on my second year of that project that the company got investment to build a v2 app for the global market. The team immediately grew and I spent the next two years working both on SQL and C# integrating each market SAP databases and models into a unified global database.
If my memory is accurate, we integrated at least 8 markets, providing RSP and other features, on industrial gas, delivery, handling and safety equipment. During those years I got much more proficient programming on C#, keeping my main role on SQL and data engineering.
This company marked my professional life in so many ways. The "Australian way" of working hard with ambition but with a work-life balance, the beautiful office with a view to the Sydney Harbour Bridge and Opera House, the lunch breaks playing football at the botanical gardens, I keep such great vivid memories of my time there.
Around 2014, after four years working for the industrial gas industry, I changed scope and landed within the same company in Media. I worked on three ETL projects, doing customer segmentation alike projects and there I got a first taste of big data, machine learning and Scala.
With an "in-house" big data cluster, we could hear the "roar" from the server room as data stored in HDFS (Hadoop File System), processed with Hadoop MapReduce (then Apache Spark), and orchestrated with Apache Mesos, provided the aggregations. Working with very smart data scientists, I started understanding ML concepts like supervised learning and GBT (Gradient Boosted Trees).
I was very lucky to start at an early stage working with Scala and Spark (which was still on unstable version 1.4) and Machine Learning. I worked for more than one year on the exciting and new Big Data world before making the hard decision to return to Portugal.
Nokia - Lisbonโ
I arrived back to Portugal on the summer of 2016. I wasn't looking straight away for a new opportunity, so I took some time off to follow Portugal on their Euro2016 winning campaign and I did a Euro trip, visiting seven countries that summer. I was also looking into ideas to open my own company, but I was unsuccessful in that regard.
Therefore, I started applying to new job offers and in January 2017 I started as a Big Data Engineer at Nokia. The project was an interesting one, build a PaaS (Platform as a Service) integrating open-source tools into a unified suite.
This project had its own challenges, not necessarily creating business logic but integrating components from Keycloak (IAM solution), Apache Zeppelin (Notebooks for data analysis), Kong (API gateway), Cassandra (NoSQL database), etc., into a seamless suite. We used Scala as the main language for integration, load and smoke tests. I was able to develop my skills in this language, specially because I was in luck pairing with one of the best Scala developers I have met. He opened my perspective on so many aspects from architecture/design to open-source and community.
I was also able to travel, going twice to Finland (once in summer witnessing midnight sunsets, once in winter witnessing heavy snow and 3pm sunsets) and once to India (an incredible experience).
Despite my role as Big Data Engineer, I was more and more working on software development and less on databases, also contributing on open source projects. Therefore, I started looking for a new challenge where I could have more impact as a developer.
tb.lx by Daimler Trucks - Lisbonโ
That exciting opportunity finally arrived in November 2018 where I was able to be part of the initial team of tb.lx, a startup within the corporate, built to expedite software development for Daimler Trucks and Buses.
It was exciting because right from day one (when we were just assembling furniture waiting for our laptops to arrive) we grew an exceptional team dynamic. We had data scientists and developers with a "green field" to explore the potential of such a huge amount of telemetry data coming out of trucks and buses.
Given my already acquired experience, I defined best practices and processes within the company. From defining our artifactory server to code reviews and quality checks, interviewing new candidates, etc. I took a wide range of responsibilities.
I was also able to travel, going several times to Germany and once to the USA. On a more technical level, microservices were built mainly in JVM languages (mainly Scala, also Kotlin and Java), all managed in Kubernetes and deployed in Azure.
I worked with a variety of processing tools, from Apache Kafka to Apache Flink, also Apache Spark, delivering business value for fleet managers from eco-drive feedback, trip segmentation, and other interesting use cases.
If it was not the global pandemic of 2020 I would be perhaps still be working there, as I met some of the most wonderful people to work with. But life had other plans for me...
47 degrees / Xebia Functional - San Fernando / Sevilleโ
As for almost everyone, March 2020 brought a big change to our lives. From going to the office, we were now working from home waiting for an end to the disruption. It made us reflect on our purpose and, for me, it was the time I built a deep relationship with who is now my wife and partner in life.
We took the decision to move to Spain in November 2021. I joined a company named 47 degrees (bought by Xebia in 2022) that was under my radar for a long time. A company expert on Scala and Functional programming, an area that always fascinated me but that I never had practical experience.
I did not regret it. I met such nice, welcoming and kind people and I encountered a work environment that allowed me to learn and grow so much in such few years.
I initially started on a project for a Japanese fintech company. Heavily using Scala Cats and Http4s libraries, running on GCP, I wasn't on my comfort zone, but I quickly got up to speed with the fast pace of the project.
It was only a 6 months project, but I really enjoyed it and I treasure it as one of the best projects I worked for (worked with really talented developers there).
I then moved to a UK project on collecting and processing telemetry data, this time from cars. I had some previous experience but the technologies used were different as well as the focus. The main objectives were ensuring data normalisation and validation. Also, I often had a "dev-ops" hat, on infrastructure concerns, rather than software development.
After one year in this project, I joined a US client with an ambitious project requiring a huge team of developers, rebuilding a data streaming platform for online radio streaming. Using Scala Cats and Typelevel stack (http4s, circe, feral, ...), and with a tight deadline, we delivered successfully the new platform. I feel I improved in so many different aspects in this project, from specification to API definition, tests and deployment, I definitely feel I grew once again as an engineer.
2024 was also a year of change with the birth of my daughter, definitely changing my perspective of life.
Not sure what lies ahead, for now this is all I got. Hope you enjoyed it. ๐
