After our first month of getting up to speed in Snowflake and SQL, the first project week is here. In remote teams of two we are coding a Python app connecting to both Snowflake and external APIs. It has quickly become clear that collaboration in practice is not just a test of our technical skills.
Working apart together
In the last month we did get a basic introduction in git, which we now got to use in practice. The few examples we tried during the training could not have prepared us for how the real thing would look. Different branches, regular pushes and pulls, merge conflicts: A few days of actual use creates more familiarity than a lecture ever can. It also shows very clearly the great benefit of organizing a repository from the very start. Four days into the project all code in all the files is still in sync between the two of us.
Apart from the logistics, writing the code itself can also be challenging to those of us used to coding solo. Every line must be clearly understandable not just by yourself, every function clear on what it takes and returns. Regular chats and the incidental call to verify the project course and test elements have proven vital. In the end, the added benefit of having more minds on the project is clear, as two know more than one. Facing and overcoming the challenges in shaping efficient cooperation is a very valuable lesson for future consultants in the field.
Lessons for the future
While our project is coming along fine (I hope to get more into the finished product in my next blog), some lessons for the future have already emerged. When it comes to collaboration in practice, getting a clear shared picture from the start is very important. Looking back, we may have started a little too soon on the physical coding, as we had to rediscuss the final product goal midway through. When it comes to the code itself, identifying which parts will pose the hardest technical challenges should be a priority. Our approach to get the overall loop working in broad strokes first caused some worry with the coach. We were lucky enough to crack our main technical challenge quickly, but this could also not have been the case.
Both working together and working on a tight schedule are important experiences. As a mostly self-taught at-home coder, it’s a good thing these skills get as much attention in the traineeship as the technical part of analytics engineering.
![Collaboration in practice](https://nimbusintelligence.com/wp-content/uploads/2023/10/gittree-1.png)
One Comment