Sometimes the most memorable moments in life are usually the small ones, the things you don’t usually think to look twice at. I experienced one such moment during my first week at Infoready when I met Justin – or, as I have now learned to call him, JP – for the first time. I assumed that I would have to introduce myself just as I would with anyone else, which is why I was both impressed and taken aback to realise that he already knew my name.
“Mr Salib, isn’t it?” he said. I smiled, extended my arm and shook his hand with a big dumbfounded grin on my face. To this day, the positive and welcoming impression he made has stuck with me, and I have come to think of this as the image of Infoready.
My first three weeks at Infoready involved a range of activities, from onboarding to helping with a new seating arrangement. However varied the work, I found myself falling into a familiar pattern. Scott (my fellow intern) and I would discuss the problem with Josh, find out what was required of us, and figure out how to gain access to any tools or applications we might need. After having absorbed this new information, we would then proceed to assess the situation, the tools at our disposal, and in the case of a more involved and difficult problem, plan out the steps we would take in order to solve the problem. We would then preemptively voice concerns regarding further issues we might face down the road, and how we might tackle them in the most efficient manner.
The tasks themselves were not necessarily difficult but the approach, the pattern, and the way of thinking Scott and I learned to adopt was the real takeaway from our internal work. This critical way of thinking has proved central to my internship thus far and has helped kickstart and champion my learning of all things data consultation and warehousing.
Learning The Ropes
With the first few weeks of internal work done and dusted, Josh gave Scott and I the option of being placed at one of two client sites: Jetstar or Telstra. Scott and I came to the agreement that I would go to Jetstar, and he to Telstra.
Fast-forward to my first week at Jetstar, and I’m greeted by a multitude of colleagues, many of which I had the pleasure of meeting at previous Infoready-held events. But the one person who takes the spotlight for leading my learning is Marvin.
Marvin is the lead Senior Developer on the Data sMart project at Jetstar. He’s responsible for all things relating to ensuring overnight data-loading batches run smoothly, fixing nightly builds, and all other things that you would expect an SQL developer to know and do on a day-to-day basis.
Marvin’s knowledge, attitude, and willingness to teach me took me by surprise. He not only explained the ins and outs of the then new and foreign SSIS suite, but he also made time in his very busy schedule to explain other data and SQL concepts that I didn’t quite get, such as joins, window functions, and other small tips and tricks.
The time Marvin invested in teaching me the various ways of data-warehousing is what helped me get up to scratch on the Data sMart project in such a short window of time. Without his help, assistance and mentoring, I wouldn’t have been able to absorb the information nearly as quickly. For that, I am thankful.
So far, I have been assisting the Data sMart team with many things, such as:
- Batch reporting, analysis, and statistics
- Staging data sources
- Integrating existing data in various environments
- Writing SQL queries for analysis
- Writing SQL tests to run in SIT (testing environment)
- Debugging and fixing project builds
The one thing I am most proud of achieving so far is helping the team adopt a better Git workflow. Unhappy with the way the current Git workflow was, and knowing full well from experience what ramifications that workflow would have on the effectiveness and efficiency of the code, I took it upon myself to introduce Kevin (the Project Manager) to Gitflow.
For the unfamiliar readers, Gitflow is a modern take on Git source control that aims to make collaborative work and coding between developers as easy and free of conflict as possible. One of the many things required to successfully adopt Gitflow is to branch out from the development branch on every feature or change to the code; something the team was lacking at the time and had caused a few issues and code-merge conflicts on several occasions.
After convincing Kevin and Marvin to adopt Gitflow, I briefed the rest of the team on the changes, and I updated the wiki with instructions on how to best utilise this new way of working. Soon enough, we all saw the promised positive outcomes of adopting Gitflow. QA (quality assurance) was so much easier for all developers, and the ability to link work items to the actual code needing review was a step in the right direction. All in all, it was an effort commended by Marvin and Kevin, and I’m proud to have taken initiative in improving an existing process which in turn had a positive impact on the team.
Reflections So Far
Being right in the middle of Week 10 (with 11 more to go), and looking back at my first few months here, I realise how much I’ve grown in such a short space of time.
When I first started, I had no idea I would be entering a whole new world: a world powered by all things SQL, where the main focus is to seamlessly integrate many different data sources (some which might not play well together) into one big model, and derive value from this newly-born set of data.
I’m ten weeks into my placement, but I’m already proud of what I’ve achieved. I’ve staged a multitude of data sources, worked closely with Sam (The Project Modeller) on integrating said staged data into the same database, and I’ve written many tests in order to ensure the quality of my work is solid.
I have absorbed so much information in the last few months, but there’s so much more to learn. I’m eager to see what else there is for me to know, and what other new challenges I’ll face. I’m not afraid to tackle them head on, especially with the support of my new colleagues and the wisdom of one very cluey Senior Developer.