Sprint[-1]
Jumping Into Scrum at the End of a Project
One of the tools I've been missing from my software developer toolkit is having any sort of real process. I've planned and forced myself to structure my projects and follow some best practices, but being the sole developer on most projects I've worked on, it was always a bit abstract. This was compounded by the fact that at both of my previous jobs that I've done software development at, the people managing the projects had minimal interest in meetings and so they happened infrequently and tended to only cover milestones.
Raizlabs currently uses scrum to manage projects, so I'm quickly getting up to speed on how the process works. I came into it at a bit of an odd point as I got assigned to a project in the final phase of client issues before shipping, but I'm already enjoying working with the system.
Because I came in at the end, I missed out on the planning and estimating work phase, which is one of the areas that I feel I need to improve on because right now my estimates for larger projects tend to be far too short. Having to commit to work every week, talk to my team every day about if I'm on schedule or not, and judge my progress as a hit or miss weekly should go a long way towards building that skill.
The other skill that this is helping with is communicating with my peers. Between code review, having to get up to speed on a large codebase, and just having another developer to talk through the best angles of attack for a problem it's a very different experience from having to fall back on documentation or the internet before even talking to anyone else about how to take something on.