Azterizm
Back to Blog

The Best Freelancing Communication Strategy as Software Developer

Communication is what will make you more preferred than others. Those who communicate the best will get more and more work and thus earn more. You will respected as well. Understand that what is shown counts, what is not shown does not count.

The key lies that the client knows everything that you do. Don't expect to do full work and show up after its fully done. It may seem like it but no one wants to be this way. Make client intrigued by yourself and let them think about you all the time. You can do that by communication. I will tell you what to communicate by frequency basis. The frequency timing is decided for long or critical projects. For short projects, you may narrow the frequency.

I wrote 3 articles that are interconnected with each other for full software development process for freelancing. They are Software Development Strategy, Feature Prioritisation, and Communication. This article is one of these and is called Communication. For reading other connected articles, please reference the links.

The Conflict

Often there are times where you have to communicate so much and in that case, the time left for your project becomes so little. Now client is asking for updates. The time you preserved for developed was taking by this long conversation. Should you tell the client that my time is over now, the updates wait later? Of course not.

You can only manage the time yourself. Account how much time are you using when speaking on the conversation. Limit yourself. Talk casual but limited. Talk work but limited. When time is up, learn to go to exit gracefully.

The Timing

The process here is defined through the perspective of software developer. You can modify it to match your work. Here I define on high level what has to be done. Preferably, reference the order.

Daily

  1. Commit the updates to the git repository. Push those updates and let client see them.
  2. Task status update. Check list that is checked off from Trello or other software you use to track tasks.
  3. Discuss obstacles. When stumbled on something that has multiple approaches to be achieved with potential drawbacks, discuss them to see which one is accepted by client.

Weekly

  1. Create demo for the updates. Document each notable update and show them to the client. Learn what to show to the client and what not, for example the client prefers to see the UI that functions instead of security made from backend.
  2. Report the progress. What was done this week and what was achieved. How clients can access the report, project, its logs and tracking system.
  3. What is going to be the next goal? Share the work that will be done in the next iteration. You have all this planned. If not, reference The best freelancing software development strategy.

Monthly

  1. Resource utilisation. Check how many resources were used and how much. Account where the resources are needed the most and optimise there.
  2. Check performance by Devtools to see how the website performs under load. Make potential improvements that make website load faster for most people. Understand which calls take longer to reach.
  3. Plan for next month. What features are you going to develop the next time?
  4. Document critical decisions. These will help you understand how things behave this way in future and also help in future projects. Decisions like these take time to make and inputs you used to make them have tremendous value after documented. You can also share with client when necessary.
  5. Is approach still relevant? You have documented how you will develop the application with an approach. Now that you are in the real world and building the application, things may become different than what was in your concept. If further development is unable to aligned with the concept, change the concept now to meet the requirement (design).

Notable technologies

There are certain technologies that I want to share with you that make this work easier. I know there are many things to consider but when you know what to do at the right time and get used to it, it doesn't bother much.

The approach that I have shared is what is used by me at the time of writing this article. Things may become easier and automated later so please do research and explore the options available and always optimise your workflow.

Technologies

  1. GitHub
  2. GitHub Actions: deployment and scripting on events
  3. Obsidian: note taking app
  4. Linear: work management
  5. Cypress: automated testing and reporting
  6. Playwright: automated testing, scripting, and reporting
  7. Docker: deployment

I wrote 3 articles that are interconnected with each other for full software development process for freelancing. This is Communication.

Links:

The best freelancing software development strategy

The best freelancing feature prioritisation strategy as software developer

More Articles You Might Like

Subscribe for new articles.

talk