Even if you are a developer, give this doc to your customer to save your self from further struggles.
No matter it is freelancer.com or the best known punctual developer in the town, you have to define and manage your project to save yourself from further struggles. Just like building a house I say. You have to know some principles before putting the bricks on and on.
This story is on the other side of my previous article. I have been developing software for years and I know how to communicate with developers in order to have the website or mobile app you want with the highest efficiency for both sides. Below, is the summary of the steps you should take:
1- Hire a consultant if possible
2- What is your project? Define it in the developer style way
3- Ask about the project’s status frequently
4- Take Over the project, Don’t miss anything
5- Contract is a MUST
6- Define project’s support stage before starting it
7- Who does the design?
8- Time wisely
9- YOU choose the technology
10- Make a bug reporting routine
To be honest, that’s the easiest and the best way for dealing with software projects in long-term I say. Hire an experienced developer or ask a friend for managing your project only. There are lots of hidden spots that you are unaware of. You may spend a bit more but you don’t want to put the project in the trash after two months, right?
First things first! Try to draw wireframes of your web/mobile app. I really like “balsamiq”. Simple and handy. Draw ALL pages of your app. It helps you to understand what you really want and believe it or not, when it comes down to the paper, you will find lots of flaws in your idea. This piece of document will be later used to hand it over to the designer. Below is a simple wireframe made in balsamiq.
Try put comments as much as you can. Make it diamond clear. You may spend a few days working on this but it’s actually the very first version of your app. You can even start selling and evaluating your idea!
Freelance developers mainly have multiple on-going projects. Thus, every now and then ask for your project’s status.
Nothing should get left behind! I have seen many clients doing the same project because they don’t have the source code or important credentials. Meaning that you can’t update your app or make any changes. This is highly common among software projects. Below, is a handy checklist for taking over your project which you should mention it in your contract:
Whether you are working with your brother or a total stranger, you need to sign a contract. More than the legal aspect, it makes your project more official than “Just an app from a guy”. There are lots of contract templates out there. Shopify mentioned the global structure of a contract. However, there are other points that you should add. I have noted some in this article.
Even Google’s projects with thousands of senior developers have bugs(unlike mine! ha). Thus, you should ask about the support stage for at least two months. Developers usually charge you X dollars for certain hours in a month working on the project. Including adding features and fixing bugs. Mention it in your contract.
“I want a website just like Amazon”. Well, it doesn’t work that way. Unless you want to have a WordPress website and choose a template, you definitely need a clear design of your project. I suggest you separate the design and develope stages. Meaning that let someone else do the design, not the developer. Just my experience. Hand over the wireframes you made previously to the designer and get original outputs.
Software is like flights, never on time! No matter how hard you push the developer, software projects have about 20% fault tolerance in the timing evaluation. Meaning that a 10-day project will end in 12 days. So I suggest to simply set the deadline for 8 days and consider a day or two in advance.
If you don’t, you end up having a website developed with a nobody known framework that no one can support. Moreover, I wanted to mention a list of available programming languages and frameworks but it really won’t help you since there are tons of them out there and it varies case by case. The best way for choosing that is by asking an expert, NOT the developer you are negotiating with(They want to sell you what they already have right?). Basically, This is what you should ask from the consultant:
“Which programming language and framework do you suggest for my web/mobile app based on my needs, timing, budget, and further support?”
Don’t throw bugs to the developer’s face every day! You can simply share a piece of the document every weekend that the bugs should be fixed within the week. If you found a new one, just wait until the next week.
Some notes for getting a better understanding of the developer guy!
— These points were years of my experience working in the software industry. They are general points for small and medium projects. Try to establish a friendly but official relationship with the development team and ask for the developer’s portfolio always before starting your project.
Hope you enjoyed it, put your ideas below, Peace and Love.