Skip to main content

How to be a successful Software Consultant (Full-Stack Designer and Developer)

 
Ziggy Rafiq Blog Post on How to be a successful  Software Consultant


Overview

In this blog post, I am going to share with you exactly how I have become a successful Software Consultant and by following these simple rules and why it is important to apply the following in your Web Design, Web Development/Full-Stack Development and Mobile Application Development.

There is this famous quote that “I wish he would tell me where I am going to die so that I cannot go there ever” In a nutshell what this means is that most of the times people trying to understand or learn something like how to become successful.

I have seen many consultants closed their consultancy or have burned out to a point where they quit consulting and change their career to something else or started to work full-time for somebody else and avoid the consulting role completely because of their fear of failure.

Five Fundamental Points

There are five fundamental things I have followed to be a successful Consultant

  1.  Have a basic systematic way of attracting clients. This is the key most important fundamental approach to have in place to gain sales and to provide cost-effective solutions to clients. Is to have a systematic way of attracting clients (setup workflow of how to get new customers onboard) another way of attracting new clients is to start working on channels that can systematically bring in new sales leads for your consultancy/organisation. As when you are doing active marketing such as producing content or attending events or running ads campaigns. There are multiple of different marketing channels that you can do knowing that if you take a specific action you will be going to see specific results and that is predictable versus just waiting for the new clients/customers to come, which will take forever.

  2.  Charge enough fee for your consultancy work. As  I have seen many consultants when submitting their proposals or bids they undervalue their consultancy work and forget that everyone has got bills and other expense to pay and by charging the reason and right amount for your consultancy work is a key aspect to ensuring you as a consultant can survive. It is all about getting the calculation right and to ensure the fee you propose is a fair, honest and reasonable amount. The catch is to break-even and figures out how much do I need to earn for every hour that I work on every day so that at the end of the month or end of the year you will be able to pay yourself for your rent, food and all your other expenses. The key is to take your time to sit down and understand your finances and learn how to calculate your break-even rate. Learn how to estimate how much to charge for each project/task and raise your fees to make sure that at the end of the month you will have enough to pay yourself.

  3.  Never treat your Clients like they are your enemies. This is something common I have seen within the consulting industry where many consultants will see their clients as their enemies and end up losing them. What we forget is that our clients/customers are paying us to get a good service out of us as a consultant. Therefore we need to enjoy giving our clients/customers a good quality consultant service and respecting them as your clients and treating them like kings and queens then treating them like your enemies.

  4.  Always Learn New Skills and Technologies in our software consultancy field. As I am a Full-Stack Designer and Developer with over 15 years plus experience, one thing I have understood from day one is that we have to always learn and learn as it’s a cycle which always improves us. So never stop learning new skills and technologies is the must to be a successful software consultant.

  5. Make sure to always Take Care of yourself by saying this we as a Software Consultant have to ensure we are taking good care of ourself and we are not spending long hours throughout the day working ie 8 am till 11 pm from Monday to Sunday. By doing this we will burnout very quickly and end up failing as a software consultant. Always make sure to eat properly, get enough sleep (like 8 hours) and excise properly( 3 to 4 times a week). Like for myself as I have loved the Chinese martial Wudang and I began practises Wudang back in 1999. What I have learned is that taking good care of yourself leads to many success in your life.


Comments

Popular posts from this blog

What are C# Comments and how to use them in our code blog post by Ziggy Rafiq

C# Comments

Overview C# Comments are only for you to read, not for the computer to execute. All the comments displayed in the Code Editor are green by default, which makes it easy to identify those lines, and the C# compiler ignores those parts when it runs your program.
Single-line Comments You can make any line into the single-line comment by starting it with the two forward slash marks //, indicating the remainder of the line is a comment.
Example


End of line comments
The End of line comments is generally used to describe variables and data types.

Example




Multiline Comments (delimited comments) Multiline Comments begin with an open comment mark /* and end with a lost comment mark */. All the text between the delimiters is ignored by the compiler.
Example Code

Example Code(Header Comments)

XML Comments In C# we use XML comment on our methods by simply typing /// to get the XML comment.



What are C# Virtual and Non-Virtual Method by Ziggy Rafiq

C# Virtual and Non-Virtual Method
In Microsoft.net C# Virtual method supports polymorphism, which is part of the OOP Concept. We would combined virtual and override keyword with the virtual keyword on the parent/base class and then use the override keyword on the method in the child/derive class and both methods are virtual.
Any methods which do not have virtual or override keyword or that have new keyword are non-virtual method.
When a virtual method is invoked on an object, the run-time type of the object is used to determine which implementation of the method to use.
When a non-virtual method is invoked on an object the compile-time type of object is used to determine which implementation of the method to use.