- Published by
- Posted on
- 1 Comment
Guest post by Arin
You’re a little bit nervous. You’re spending all this time putting together a great marketing campaign, but since you’re a startup, your product is not completely finished or optimized yet.
Let me share 3 tips for using marketing to drive interactions with your development team:
1) Set priorities and communicate very clearly
I know you’ve got a lot of ideas – that’s what you get paid the big bucks for. But when talking with your team, you need to be very clear about what is important to you right now. And, be clear about which specific parts of a feature are most important in the first version, and which parts can wait until later. Don’t just do this verbally. A simple bullet point list, ordered by priority, on a single page of paper will do.
Image credit: Sean MacEntee
If a feature is not important to you right now, then don’t talk about it. At all. You can list it on your team’s backlog (aka “to-do list”), but don’t get knee-deep in detailed discussions with anyone about it, or you will distract them from the things you need sooner. Communicate very clearly about what you need done in the short term and exactly the required minimal features for it to work.
2) Be flexible
In any project, there are three sides to the “iron triangle”: Budget, Timeline, and Scope. Budgets, if they exist at all, are always tight at a startup. If you have a fixed timeline (“we have to have this new feature before the tradeshow!”), then you need to be flexible about the features that can be completed in time.
Image credit: mikecogh
3) Be willing to reinvest in permanent features
If your team is following Customer Development or Lean Startup methodologies (and you probably should), that means that you are building lots of small pieces and testing them with your customers (these are called experiments). You build out a simple idea, and get it in front of customers as quickly as possible.
If they don’t like it, you need to be willing to throw it away and move on to the next idea. Equally important, though, is what to do if customers do like the new feature. You can speed up the deployment of these experiments by encouraging your developers to deploy messier code as part of an experiment, because you don’t know if users will like the feature anyway. But if they do like it, you need to be willing to give your development team time to improve (or in many cases redo) code before it becomes a permanent part of the system. This approach will allow you to deploy more experiments more quickly.
Image credit: remysharp
If you communicate your priorities and deadlines clearly, are flexible in scope, and you’re up front with your team about what you can compromise on, then you are helping your development team to help you. And anything you can do to empower your software development teams to deliver code faster is a good thing.
Arin Sime, guest author of this post, is founder of AgilityFeat.com, a software development firm which specializes in startups. Arin has over 15 years experience doing software development for a wide variety of companies, from startups to horribly bureaucratic places. He regularly trains companies on agile software development methodologies.