Generally, projects, and in particular software projects, require some time to plan, design, build, test and deliver; but not all the time. Sometimes a project requires a quick turnaround and can have demanding deadlines! How do these projects differ and what factors might be important in determining the overall success of a quick project? In this article, we’ll look at a few of those factors and how they can set you up for a good experience.
A project definition in advance
If, as well as doing the project, you are going to have to spend some time specifying and agreeing exactly what is wanted, then that may be a warning sign that you are not going to get all but the simplest of projects completed in a week! Having a strong project definition up front will make all the difference, giving you a good head start on the project. If you are exceptionally lucky you will have a client who is fully up to speed with IT and software, knows exactly what they want and is able to provide a short succinct and accurate specification. In our experience this normally only happens when the client is another software house.
Where the project you are taking on comes with the added challenge of needing to be delivered within a week, you are also going to need some way of getting the availability to do it! Assuming that your current work is not all on a happy path plan there should be space in existing projects to allow you to flex and take on small pieces of work. But if things are not going well on other work, or your starting to take too much on, then you would have to carefully consider whether you can squeeze such a job in. We for one would always choose satisfying current clients to taking on more work; it is just not in your long term interests to annoy current clients
If you are going to take a short piece of work on, possibly burning the midnight oil, if things get a bit hectic then it really helps if that work is something you are interested in or enjoy. Although it is obviously not essential, having a natural interest means you are much more likely to put in the hours to get things done. This is especially the case where the subject material or technologies within the project are things you are not totally familiar with. I would guess that most software engineers fall under the jack of all trades and master of none (or maybe just a few!). There are often areas of technology that feel like home whilst others take a few more Google searches to remind you of what you had to do or even find it out for the first time. When these come along in the project you are undertaking, a natural interest or enjoyment in that area will once again pay dividends.
Where a client asks for something to be delivered with only a minimal amount of effort and/or a demanding timescale, then for that client to show some flexibility toward the contractor hugely increases the chance of a successful outcome. We’re not saying here that the specification should change radically, more likely that the client might accept a different method of skinning the same software rabbit! You normally know if this is your type of client after speaking to them; just remember that they are also likely to be under pressure and, in some cases, flexibility can be an early casualty of that pressure.
You may consider the above obvious, and indeed they may be. However, a quick check prior to engaging on small and quick projects could help you ask relevant questions or phrase your statement of work, whatever form that takes, in a safer way. Good luck!
Mark Davison, Terzo Digital, August 2016