My day typically starts quite early, when either my nearly two year old daughter or five month old son wake up. I live in a village just outside of Reading, about 45 min - 1hr from the Maidenhead office; I split my time about 50:50 between my home office and Maidenhead, enjoying the extra time I get to spend with my family when I don’t have to commute in.
Once I’m at work, I’ll grab a fresh pot of tea if I’m at home, or a cup of Earl Grey if I’m in the office and then catch up with Skype and Emails quickly. I’m a big fan of using email to pull together information from other data sources and so get my JIRA, Gitlab and GitHub notifications that way. I work on the Information Governance team and we’ve got about half the team in Romania as well as Roy in Sydney, so there’ve been quite a few hours worked by the team between me finishing one day and starting the next. Follow the sun development, FTW!
The morning is typically when we do our team meetings, so we’ll have a daily stand up, as well as one or two other meetings from the usual meeting list most agile teams have: sprint planning and pre-planning, reviews, retros, as well as a bug triage a couple of times a week. All our calls are video calls (using what every tech is flavour of the month), and we try to get together in person with the whole team a couple of times a year, which makes a huge difference to how well we work together.
I also join the 3-in-a-box calls between John Iball (PM), Roy (architect) and Shane (User Experience Designer) to give some UI expertise. I work closely with Shane especially, working through the wireframes he produces, reviewing them from a implementation view point, looking at things like new features required in Aikau requirements and REST API implications, as well as helping to try to pick up on anything that might be need fleshing out in more detail before sizing with the rest of the team.
After the morning meetings are done, I’ll recharge my tea cup and get into my IDE. I use IntelliJ and typically have a couple of projects open. My main project has almost all of the Alfresco code base (Repo, Share, Aikau, RM, etc) added as modules, which makes searching for stuff easier and means that when I’m extending something in RM I can open the piece of code I’m extending along side it. This is easier to do now that RM uses Git and switching branches is less costly than it was under SVN, when I effectively had a checkout per branch. This set up also enables me to quickly generate an Aikau pull request if I've got an improvement there.
There's never much time between the morning meetings finishing and lunchtime, which, when I'm in the office, often involves a trip to the local pub for a pint of one of the guest ales at The Bear. Tuesday is pizza day when the whole of the Maidenhead office catches up in the large ground floor kitchen.
After lunch is when I get most done, usually blissfully uninterrupted by meetings. Back in IntelliJ, my open editor tabs will typically either be some new feature work or bug fixes for a maintenance release. Recent tasks include: a hot fix request for RM 2.2 requiring me to look at the details of how RM works with our outlook integration; a maintenance release for 2.5.1, ensuring compatibility with updates to Share made for Alfresco 5.2; and reviewing the API specification for some of the new public API work we're doing. Not all the time is scheduled, I try to find time to browse the forums or IRC chats, write blog posts like this, or look at product and process innovation: I've recently been helping the localisation and user assistance teams with their roll out of a new tool (Passolo and Rigi) that will enable easier and quicker translations, and can show the strings in context. The innovation ethos is quite strong in the RM team and we've got our own demo server and raspberry pi.
Most days include some JIRA wrangling and some code reviews in git lab. We use a modified version of git flow (master is our develop), meaning all work is done on a feature branch and code reviewed before merging.
At the moment, I'm also getting involved with the hiring process as we've got a couple of entry level vacancies within the team.
The end of the working day always comes around quickly and I make sure I'm home before my kids' bedtime.