7

I am a Software Engineer at a startup ( 16 employees ), and we are still working like we have 3 employees. The buy in for our tools is very minimal and renders them almost useless.

I know we are going through some growing pains, but we need to start fixing things. I was hoping for some advice on picking a workflow and sticking to it, or maybe recommendations on new tools. Any help / advice would be much appreciated.

A few observations I have noticed and consider problematic :

We are very "knee jerk" in the sense that if an important customer asks for something, we immediately work to push it into a release. We have never stuck to our release plan, and I believe it is causing a lot of the team stress.

A lot of the prioritization of our work comes from our CTO and CEO, but that prioritization of work is not transparent. The general workforce, me included, struggle to keep up with what is important. Often times we run into scenarios where we are working on things that we shouldn't be.

I think the usage of our current tools (Pivotal Tracker, Bitbucket, Google Hangouts) is poor because no one believes in the value of tracking what we do. I have tried being a pest to people about using the tools, but verbal communication seems to be the primary method of assigning, managing, and sorting work. It's hard to adjust resources, and nearly impossible to be aware of what people are working on. If you look at our Pivotal Tracker velocity, we are probably one of the least efficient teams in the world because 50+% of our work never makes it in there. It causes problems with releasing, testing, and code management.

We struggle a lot with Pivotal Tracker because we have a lot of projects that are related, but you can't do any kind of relationship with stories across projects. Most of us work on 6-7 projects at once and Pivotal Tracker becomes a bit of a bottleneck for us. The ones who deal with one project love it, but the people stretched across a few are not doing a good job.

Scrum is very popular and we "try" to do it, but our daily scrums last 35+ minutes and we generally don't have any other kind of meetings or planning activities.

Thanks for sticking with that long winded description.

1
  • Can you define whether you are the team leader or a team member? (I assume you're one of the senior members of the team). If it's your team (e.g if you're the boss), you could motivate and use authority to go "your way". Else, you'll have to convince the team and the higher authority, which will become a tough experience. Commented Jun 7, 2017 at 7:08

2 Answers 2

13

Forget what you have and start with a retrospective

There is little point in pushing any tools, process or framework unless people are bought in to their use and the reasons behind their use.

Book a retrospective with the team and talk through issues. Chances are, if you don't think things are working as well as they could be, other people feel the same way but might have very different takes on the reasons why. Getting everyone's input will mean people feel more invested in whatever path you take and will likely pick up problems you hadn't even thought of.

Use a physical board

Hopefully, with a relatively small team you're all located on the same premises. Hopefully all in the same area...

If so, set up a physical board to track work rather than trying to use any tools. While electronic tools can be useful, at the stage where you don't really have a defined process, a physical board is easier to use and easier to change if you need to. It also gives you flexibility to do things that not every tool will.

Begin by modelling the simplest workflow (probably 'ready', 'in progress', 'done', 'released'. Introduce additional steps as you discover a need for them

Split your team

16 people is too big for one team. With two people, there is only 1 path of communication. Between 5 people there are 10. Between 16 there are 120 different lines of communication...

Scrum teams usually aim for between 5 and 9 people and I've found this works pretty well. Consider identifying two or three streams of work and having smaller teams focussing on these. That'll help keep standups shorter and more relevant to the people attending and improve communication between people in the teams (co-ordinating between 5 people is far easier than between 16!).

Set a goal

Once you have your stream/product/feature teams, work with each team to set a goal. Start with a short term, very tangible goal (e.g release x feature by the end of month). This will help the team focus more and will help prioritise ad-hoc requests that come in, hopefully stopping as many knee jerk reactions to new requests.

3
  • Splitting the team is difficult because we really work on separate projects all the time. Instead of 16 people on 1 team, think of it as about 12 different teams all consisting of 1 or 2 people. I have asked that we start setting goals, but it is completely useless because of our knee jerk reactions. I am going to suggest some of this to our team to help with the growing pains. Thanks for the help.
    – Alex
    Commented Apr 10, 2014 at 14:29
  • 1
    Ahh... maybe try actually forming some teams with focus then! Could even keep a team for ad-hoc and have two dedicated to new features... first step is to talk about it though. Best of luck.
    – Ben
    Commented Apr 10, 2014 at 16:41
  • 1
    Great answer @Ben! Communication is definitely an important key. I also really like ad-hoc teams and new feature teams idea. It should maintain customer responsiveness while adding new features to releases.
    – Jeff
    Commented Apr 14, 2014 at 19:22
1

Maybe it is a matter of picking better tools so that your team will want to use them. Implementing business process management tools will help you and your team follow through a complete process rather than your "knee jerk" approach. If you can create a few workflows and use the right tools to track them you will immediately see more efficient business practices around you. The page I linked to above is a great guide for picking the tools that will work for you.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.