3 Development Tips for freelance programmers

Source: Internet
Author: User

1. Communicate with your customers

As a freelancer, this is one of your most important things! I find that customers are more agreeable to the following practices:

Reliable: be a reliable communicator, respond to emails and answer questions in a timely manner. Also, by sending periodic status reports and/or letting them know for the first time that you have completed a phase goal, you can avoid letting your clients suspect you are doing what you are doing.

courtesy: Polite and professional, but equally important, also be friendly. After all, we are human!

honesty: don't lie, keep your promise. Don't commit to promises that you don't intend to fulfill. For example, do not commit to a certain function at the end of the project, and if you already know that it is difficult to complete the project within the expected deadline, even if you do not add this functionality.

do not hide the problem: If the problem is serious and/or the our atmosphere will be exposed sooner or later, notify the customer of the problem as soon as possible.

keep track of your time: If you charge by the hour, you should keep track of your time and share it regularly with your customers. If you take a uniform rate for each project, it can help you figure out the difference between the estimated workload and the actual workload.

provide technical advice: If you find that your customers have made the wrong technology decisions, be sure to point this out to them, rather than letting them go farther on the wrong path until they are struggling. Discuss decisions together, but keep in mind that the final decision must always be in the hands of the customer.

Question : don't be afraid to ask questions: This avoids detours between you and your customers. In doubt, ask, encounter ambiguous place, do not follow the presumption of self-righteous. When the requirements are not defined correctly, or when there is a lack of important detail, let the customer provide more details, or give your version, so that the other party can immediately find the error.

Publish what your customers expect, not what you think they expect: in software development, there is often an expectation gap-the difference between the customer's expectations and the results they really get. When things are not specified, it is a good way to reduce this generation gap by eliminating ambiguity and avoiding assumptions.

For example, if the requirement declares that the user must provide an e-mail address and password to register, and another asks the user to log in by entering a user name and password, you will find there is an inconsistency: the registration requires an email (not a user name), and the login expects the user name to be used. Should you not use e-mail when you log in, or do you want to enter a username when registering? No one can answer this question except the customer.

solve The problem: If you have a problem, concentrate on solving the problem, not complaining about it.

2. Protect your reputation

As a freelancer, this is the most important capital! As the saying goes, good things don't go out, bad things spread thousands of miles.

I think, in fact, we should remember the good things, forget the bad, but the world is so cruel. If you have a bad reputation, it can be hard to find projects, especially online freelancers, because your reputation is public.

A few years ago, I hired a developer on Upwork to help me do a JEE project, although he had no specific experience with JEE. I am willing to pay him to learn what he needs, and the task is simple, is a non-development task, technical writing.

About one weeks later, he changed his mind and said Jee was too complicated. Worse, he began to slander me and my client's chosen framework with some very objectionable words. Even so, he asked me to pay him all the time he spent on the project and accused me of making him work on the technology he didn't want to deal with.

In the end, I paid only a fraction of his time and also wrote him a long negative comment on Upwork, and I'm sure it will undermine his reputation on the platform. I did it on purpose. Please do not misunderstand me: I am not for revenge. I just think I need to remind prospective potential clients that they should anticipate this guy's level of service and professionalism.

The best way to protect and improve your reputation is to ensure customer satisfaction!

So what should we do? One way is to temporarily think of yourself as a customer. I've worked with developers on platforms such as freelancer and Upwork, thanks to these experiences, because it makes me understand:

    • How to choose the best candidate from a number of candidates

    • What to expect in the work

    • How frustrating it is when developers don't send updates and don't reply to emails

    • How happy when developers always let you know, anticipate your problems, and provide updates

Of course, you don't really have to hire developers to act like a customer. The cost is too high. :]

But this generation of thinking can help you look at the problem from the customer's point of view. Especially when you deliberately do something to hide the problem or deceive the customer. One of my favorite maxims is: Do unto others, come back haunting.

3. Solving common free-career problems

As with any profession, freelancing also has dangerous areas. Here's how to predict and prevent the most common problems.

Solve all the ambiguities in the early stages.

As I mentioned above, the key approach to customer satisfaction is to identify the customer's expectations and eliminate ambiguities. The project may begin with a lot of ambiguities about rates, remuneration, terms of payment and deadlines. Be sure to solve these problems correctly!

Don't sign a nondisclosure agreement without a blur.

I have been repeatedly asked to sign a nondisclosure agreement without informing any details of the relevant project. My attitude is to refuse, even if there is a risk of losing the project.

Why is it? The question is, how can I sign a nondisclosure agreement when I don't know anything about what I need to keep secret? What if the project I've worked with has clashed with this confidentiality agreement?

If you're in this situation, ask the customer if they can give a general idea of a project, and don't need to reveal too much-just enough to assess whether you can sign the confidentiality agreement responsibly.

What kind of project is it? Is it a social app? --Oh, well, I think I should tell you that I recently developed a similar project.

What kind of project is it? An app to calculate the trajectory and fuel consumption of space rockets? --That's OK, I can sign a nondisclosure agreement. I'm sure I've never been involved in anything even a little bit alike.

Read and understand contracts

This is obvious, but this topic should be handled with extreme care. A contract is a legally binding agreement between you and your client, but since it is usually your client's request that you sign it, the contract is used primarily to protect him and his project, not you.

It's hard to give advice here because no two contracts are the same, and most importantly, I'm not a lawyer. But here are a few general guidelines:

    • Read the contract carefully.

    • Read it again, and then come again!

    • Just contact an experienced lawyer to help you review the contract, especially if there are any confusion, unclear or disturbing areas. It is true that legal advice is expensive, but in the end if it is useful, it is absolutely worth the price.

    • If you find any errors or ambiguities that are detrimental to your terms, then just ask for changes.

    • If the customer refuses to change, take a step back and look for other items.

Prepare for a sudden job.

Without advance notice, the project stopped, which was one of the attributes of freelancing. My response is to take at least two part-time projects at a time, rather than just a full-time project.

Each project is a fallback for other projects: if one of them is aborted, I have other jobs. After all, half of the income is better than nothing.

When this happens, you may feel frustrated-at least, it sometimes happens to me. I know that frustration is a normal response, and when I feel I'm adjusting my mindset, I'm going to look for other challenges.

Sometimes, if a two days passed, I still do not have the passion of action, then I will choose to share with family, perhaps to do some of my work too much to do things, such as participation in amateur activities (recently, I study drums:]), learning new things or reading.

Finally, I don't know if it's luck, coincidence, or anything else. At the end of the project, whether it happened suddenly or because it came naturally to the time frame, I often received unsolicited and unexpected offers. For example, on the second day when the project was suddenly frozen, I received a plan on the stack overflow and another one on LinkedIn a few days later. These two are new contacts, not friends.

I don't know if the same magical thing happened to you.

However, whether it is unsolicited offer, I will keep searching, keep the application project, ask my contacts and so on until I finally find a new project worth my effort. This process sometimes takes days, sometimes even months.

published on Demand http://www.biyinjishi.com/products/a30-b3070/
Advertising show http://www.biyinjishi.com/products/a35/
Outdoor Inkjet http://www.biyinjishi.com/products/a35-b3510/
LED Display http://www.biyinjishi.com/products/a35-b3515/
Door Head http://www.biyinjishi.com/products/a35-b3515/
Lightbox http://www.biyinjishi.com/products/a35-b3515/
logo Wall http://www.biyinjishi.com/products/a35-b3520/
AD Word http://www.biyinjishi.com/products/a35-b3520/
signage http://www.biyinjishi.com/products/a35-b3530/
logo http://www.biyinjishi.com/products/a35-b3530/
Exhibition Package http://www.biyinjishi.com/products/a35-b3535/
Conference http://www.biyinjishi.com/products/a35-b3535/
Exhibition Frame Leasing http://www.biyinjishi.com/products/a35-b3550/
Exhibition Fixture http://www.biyinjishi.com/products/a35-b3550/
Banner http://www.biyinjishi.com/products/a35-b3560/
Bunting http://www.biyinjishi.com/products/a35-b3560/
Banner http://www.biyinjishi.com/products/a35-b3560/
Wall Sticker http://www.biyinjishi.com/products/a35-b3570/
Car Sticker http://www.biyinjishi.com/products/a35-b3570/

3 Development Tips for freelance programmers

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.