Note: I am at Durham University. At Durham students are part of a College which is like sub-community outside of your degree subject. For my fellow UK devs, its not a sixth form college, but I'm also not in charge of the Durham University Website.
I have recently taken over as Grey College JCR's website editor. As part of this, I had the opportunity to create a Web Committee. This is the first time I will be in charge of a team of developers, and I wanted to make sure I did everything in my power to make it as great an experience for my team and myself as I could.
Though this is my first being the overall lead of a team, I have been part of many different teams, all of which have been led in very different ways. The first thing I decided to do when thinking about how I want to lead my team was to reflect on the teams I have been a part of, and what I felt worked, and what didn't.
After some thinking, I decided on two organisations I have been part of that I wanted to influence my management. I thought I would go through my key take away from both organisations.
I have been very fortunate as to be a member of the organiser team for DurHack (Durham University's student-led hackathon) for over a year now. I love being part of this team of enthusiastic and talented team, and I have learnt a lot from those that I work with.
When organising a hackathon there is a lot of stuff to remember! With product quotes, packages, swag, catering, sponsors, speakers, judges, attendees, volunteers, mentors etc, it would be very easy to get overwhelmed and lose/miss something important. This is a problem DurHack has worked very hard to solve. The leadership team have extremely well organised documents, and make use of the best service for the information that needs recording. Having a clear and easy-to-navigate set of organisation documents, both for the content info and the more meta-organisational info, is something I'm keen to replicate with my Web Comm.
Another thing that I believe is key to our success at DurHack is the creation of a clear and well thought out hierarchy. We are a small organisation, yet have defined sub teams and sub team leaders. It creates a far more streamlined form of communication down the organisation, and allows meetings to only require the attendance of those who really need to be there. As someone who despises meetings for the sake of meetings, I really appreciate this! Taking it one step further, we have a tree diagram showing the hierarchy in our documentation (which is there because of point one 😉), making it really easy to figure out who you need to speak to at any given team.
My organisation is smaller than DurHack, but this idea of having sub-teams with clear leaders and responsibilities is something I will be implementing where suitable e.g. when we eventually have multiple projects running simultaneously.
I am also very pleased to be part of the GitHub Campus Expert program. I've have only been a member for a couple of months, yet I feel like I have learned so much!
I have used GitHub for a few years now, ever since being introduced to it during my first year at uni, but had never really looked beyond hosting my repos. When I joined the CE program I took the opportunity to really explore everything GitHub has to offer, and there's loads!
In particular, I was looking for services to:
- hosting of our repos
- store a knowledge base
- facilitate Kanban boards
- communicate with team members
- host virtual meetings
I had a few pieces of software in mind already like GitHub for our repos, Slack for communication, Trello for kanban boards and Zoom for meetings.
I then moved on to think about how I was going to create the knowledge base and instantly thought of the following services; Google Drive/Docs, Dropbox, Microsoft Office Online, Nuclino, Notion, just emailing pdfs etc.
I had two big considerations when comparing the above solutions:
- what else can this service offer me?
- how easily can I transfer ownership to the next web editor?
With regards to other services, I was already aware of the ability to integrate easily with products from the same provider for Google and Microsoft, and I was aware of the other uses for things like Nuclino and Notion.
And all these are good solutions!
Google is easy to use and runs well in browser, all of our university accounts are Microsoft accounts, I have experience with Nuclino from DurHack and I use Notion personally for managing my life.
But each of these solutions felt somewhat lacking. I was concious that I wanted to use as few different services as possible, with the ideal solution offering everything. At this point in my planning I was already going to use four services, with whatever I chose becoming number 5.
Thankfully, all of my consideration and planning coincided with my CE onboarding. My onboarding opened my eyes to the other services GitHub offered, and non-traditional ways to use repos.
Firstly, GitHub offers the ability to create an organisation. This organisation has an owner, and the organisation owns any repos. This means that transferring ownership when I graduate will simply be a case of transferring the ownership of the organisation, rather than every single repo I create during my time as editor. Within the organisation you can also create project boards, that not only function as Kanban boards, but can also be linked with repos and integrate with issues.
Secondly, I was introduced to the idea of using a repo as a knowledge base. This perfectly solved my need for somewhere to store all my meta-information pertaining to the running of the website. Given that I am already familiar with using markdown, I decided to create a resources repo with a .md file for each topic I want to cover.
I will be writing another post about the specifics of how I am running my team with just Slack and GitHub.
For those of you that aren't GitHub CEs, you may not be aware of the application process. The TL;DR is that its very long. Having gone through the whole process myself, I had two main take aways:
- A more involved application process will help cut out those that aren't truly passionate about position.
- Often when I have told peers about the fact that I am now a CE they say "I was going to do that but I didn't have the energy to go through the process". I, like the GitHub CE team, want individuals that are excited to be part of the team, and having the first stage of the application require some level of effort helps ensure you are starting your sifting process in the best possible way.
- You can use the application process to help train the applicants
- The CE process involves training modules with exercises to complete before being approved as a CE. I learnt a lot from completing those modules, meaning that not only were GitHub getting a more qualified version of me, but I also already felt part of the team by the time I was brought on.
I am still very early in my management journey, and I will be updating this series with what I learn along the way.