I'm not sure that the issue is with Upwork itself. I have been a long-time Odesk user, almost since day 1, and have sourced many, many freelancers from there. Currently, I'm pretty much done with Upwork (and related platforms). I have developed over the years a solid, quick, and effective method to screen candidates involving Skype interviews and coding tests.
The level of fraud is now such that it is no longer cost effective or interesting to use random freelancers. The majority of clients for freelancers on Upwork are non-technical, and it is almost impossible to convince freelancers that you are, in fact, a highly technical client. The typical project progression is that a few days we see useful work, after which there is a steady decline in quality and usefulness of code. Frequently, freelancers ignore technical or functional requirements.
Overall, it is mostly a process that appears designed to maximise billable hours whilst looking busy and producing code that doesn't actually achieve anything. This nicely circumvents dispute processes, since they can claim they did, in fact, produce working code. The fact that it took too long isn't anybodies problem except yours. General quality of code produced is typically atrocious. Rating is a meaningless metric, since the majority of clients are non technical and will base their rating on things like presence, pleasant to converse with, and final result (something that mostly does what they asked for) and typically doesn't take into account quality or if in fact this was produced at a reasonable pace.
There are so many ways to scam clients, and there are no effective ways to stop these scams. When lucky, you sometimes come across good developers that do a good job and don't mess around. I hold on to those for as long as I can, but eventually everybody moves on at some point.
I'm done with this model. It has become too expensive, too risky, and highly unpleasant overall.
I ran into this same problem with fiverr and other outsourcing. I ended up hiring a guy in NYC for $150 an hour for a fixed budget to do the work. He gave me amazing well structured code that was exactly what I wanted.
I am also done with all of these outsourcing platforms. I write highly technical specifications, and I would always get results that did not match the specification.
That is exactly the issue. It mostly comes down to code review, i.e. to make sure they produce functional code in a reasonable amount of time, where the code doesn't look like it was written by a crazed monkey on crack. The last few years the latter was increasingly the case. There are many times where, after the first few days, there is a dramatic shift in coding style, and you know that another (possibly junior) dev has taken over the work.
As this kind of fraud increases, it becomes increasingly expensive and overall unattractive to work in this fashion.
To be honest, right now the market is fucked, which is why I am eager to get out. On the one hand, pressure from "cheap freelancers" has driven down the client expectation of cost, whilst on the other hand, decent freelancers often command rates that are in excess of what I am able to bill. It is unsustainable, and I am out. I am finishing a migration project for a long standing client of mine, and that will probably be the last project I take on that will require me to engage with freelancers. I am already struggling to resource this current project, and I can do without the hassle.
I'm scoping out a new startup, and will need to find something to do to keep the money flowing in until that's done.
In my experience, you need to work with individual developers and never ever with shops. I don't know how many of those are still around, but I had good work done on what was then Elance.
An easy filter when soliciting work is to include some things in the job description that the applicant has to respond to/think about. Most applicants will not, so you can throw them right out.
I also discriminate fairly aggressively based on country, suffice to say that certain regions usually match my requirements better for developers who match their advertised skill level and think critically about the tasks presented to them. Controversial, possibly unfair, but there it is.
Yeah, did the same things. I only work with "Western", Eastern European, and Russian developers. I speak and read a bit of Russian, and sometimes screenshots are a dead giveaway. I also have the interviews, with a surprise coding and reasoning task, and ask for references.
The reality is that today, a "meatmarket" (upwork etc. al.) freelancer is good enough to throw up a nice Wordpress site with a fancy frontend. Unfortunately, the people with the skills and qualities that I look for always end up with full time jobs at some point. All my long timers now have lead-dev type jobs with large firms.
This is exactly what I do. First thing is to require someone to put something specific in the subject line- that gives an easy filter. Next is to provide a pretty detailed spec so they know that they're not dealing with an ignoramus (either that or a verify that they are dealing with an ignoramus lol).
But I only outsource pieces- plug-innable- of a project. If you make the analogy to OOP- I write the interfaces and outsource the coding.
Often I'll have them modify or incorporate some existing, third-party (like Adam Shaw's calendar- case-in-point).
I've had pretty good luck overall. So I would definitely be willing to use a good site. Hell it might be fun to pick up a couple of gigs there.
I don't think there is / will be, because the idea itself is flawed and goes against the very concept what freelancing is.
Actual freelancers have their reputation and local network of contacts, plus maybe some attractive online presence (blogging, open source, etc).
If needed they can try reaching companies directly, circumventing platforms which otherwise would make him appear as a commodity.
Remote job boards work fine, whether you are applying as a freelancer or employee. 'Middleman' platforms not so much - in the end remote work is much about trust/communication - escrow/time-tracking can be counterproductive.
When it was Odesk, and had just started, I grabbed my first project. I have done very few projects (not a developer) on it as I couldn't take the time out to keep hunting for work and give long term commitments. And then when it became Upwork, finding even small work became a big pain.
I feel that it is not just the freelancers to be always blamed. I have seen jobs wherein the client will say that this needs to be done in 2-3$ and in specific amount of time, which is impossible. Then there were those who would post jobs but wouldn't exactly know what they want and wouldn't give out details.
The platform was good when it was Odesk. With it becoming Upwork, the changes have made the platform worse in my opinion. Not that many people don't still post good work and hire good resources, but something else can sure fill the gap, if it can figure out a way to better the rating and skill selection system.
And to those who keep saying that people from 3rd world countries have ruined it, that's a totally nonsensical thought. Idiots and scammers are to be found in every part of the world. Yes, people from Africa, Asia and South America are able to charge less, which is because of low cost of living in such countries. You (people from 1st world countries) want to save money by letting a low cost worker do your work (keeping a big share of money without doing work) and happy when that happens, but the moment your job gets threatened, you start shouting. Wow!!!
What if there was a transparent and fixed hourly rate for all developers? Developers would be forced to compete on other aspects than price. At least it would solve the issue with devs from third-world countries bringing down prices for everyone. Ratings and reviews would mean something - no more "works great considering what I paid for it" reviews.
Also, this would serve as the natural quality control - with hourly rate being reasonably high, low-value projects and clients would simply skip the platform. Of course, this could only work for a more niche market than upwork.
If one fixed hourly rate is just too limiting, then there could be 2-3 price tiers. Just keep it simple.
This might be already implemented somewhere. In that case, does it work well?
The three tiers scheme sounds interesting, this way each dev would be paid according to their ability, and would be able to get work according to their needs. I think this could be a pretty revolutionary concept as far as work goes, and what's there to lose anyway?
Yes sure, there is a big opportunity as Upwork just sucks in regard to everything. However, I guess the biggest problem is the chicken and egg problem. As long as you don't have a known trusted name behind you it will be hard to get your first serious clients and freelancers. If somebody like SO (just as an example) would step into this market Upsuck would be done in a day.
I would gladly use an alternative _just_ so my eggs are in more baskets. I tried freelancer, it's so unusuably bad and bloated that it really makes upwork look great, and upwork is a site that is down 2 hours a day 3 times a week for "maintenance". Their messenger also kinda sucks. Freelancer for example has hardly any filter options for freelancers to filter jobs.
I have done some work on Upwork, as implied above, and here is another issue I had that makes me want more sites to market myself on:
I once filed a support ticket / complaint that my profile page only showed my very oldest (i.e. simplest and lowest cost) jobs to users who are not logged in. If you were logged in, it would show you more.
I got a response that said "Oh well, most people are logged in, deal with it".
After a ticket is closed you have an option to rate it, so I clicked "unsatsifactory - did not resolve issue"... and within 30 minutes my account was flagged for review, I was unable to bid on jobs or to withdraw money.
I'm not 100% certain, but it seems damn likely the agent I rated poorly flagged my account.
To their credit, it didn't take long to have my account reviewed / verify my identity. That said, there is no reason I should have been flagged with such conspicuous timing, being top rated, long time user, all 5 star reviews...
The problem I have with upwork, probably because of my location, cost of living and money I can make locally, is that even if I have some in between time free the amount of money I can make on upwork is so low, compared to the amount of time I would have to put in to get anything, that it is more worth my time to work on my own projects.
Something that had an actual rating system, where you had to say post some code on GitHub that would then be evaluated, and you had to put some token in that code to prove it was yours, that sort of thing.
Or maybe a coding test, but something freeform, that could be checked for plagarisation?
I am myself an experienced Joomla! dev but have been using upwork to outsource various non-critical and none-core works in a very limited way over the past year or 2. The other month I needed a Joomla! expert to work with me on a larger project and looking closer and after some interview I understood there was none I could rely on for this critical project, so I abandoned the job post.
However, this gave me an idea that I should enlist myself as freelancer. Now that was easier said than done, I have been submitting all kinds of revisions of my freelancer profile and have been declined with the reason that they have too many freelancers with similar profile. I say bs, because I know my domain very well. I did all necessary tests including Joomla!, php, mysql, javascript, english ... all within the highest ranks. Anyway after many efforts and even request to support to review the seemingly automated reply I kept getting I stopped trying, and the support could only advice me on some generic aspects such as changing my profile photo to be more visible and such nonsense.
For me this was quite indicative of what is going on on this market, but I am not sure why they choose to dumb it down.
Thank you for raising this question, which I think is heartfelt one both as client and freelancer.
Any platform that will allow anyone to bid for jobs will attract bad developers and developers from third-world countries, who are going to bring bid offers down and push away good developers and developers from first-world countries.
Any platform that will allow anyone to post jobs to developers from third-world countries will bring crappy projects posted by amateurs with vague specs.
The more popular it gets, the crappier it becomes. There's no way to win.
PeoplePerHour is better than Upwork, it's mostly people from the UK. There are also services where they screen candidates and only accept the best developers (I signed up but there was too much friction and I lost interest).
In general, IMHO the market for remote devs is there, but I guess most people if they had to spend a lot of money for a dev they'd much rather have him work in the office or at least meet him in person and have him come in every once in a while. What's left is people who will be ok with crappy developers that will do the job for 1/10 of the price, and they might as well give it a shot.
> will attract bad developers and developers from third-world countries, who are going to bring bid offers down and push away good developers and developers from first-world countries.
What's the inherent problem with 'developers from third-world countries'?
The problem is that for a normal country, coding isn't such an attractive career in general. It makes about the same money as every other engineering field (and less than many, like architectural engineering) requiring similar qualifications, and in many ways more exhaustive/painful, so only reason why you may want to be a coder in say UK is to love coding, then your hobby becomes your job. Hiring a British developer, you may be more or less certain you aren't working with a cynical milkman.
In poor countries, coding is usually the only way out of extreme poverty, unless you are born into right family. What other good careers are available in India that beat freelance coding at average ($30/h) rates? So, it attracts people who are simply after money and nothing else, they practice squeezing their clients dry and doing all kinds of tricks more than they practice coding. Because they give no shit about coding.
Are you sure about the 30$/hr figure for people escaping extreme poverty?
30$/hr is rich in India, so it's not surprising there aren't better rates.
30$×8×20×65 = 3.2 lakhs per month = 37 lakhs per annum (average Indian makes somewhere of the order of magnitude of 1 lakh per annum).
For reference, in /r/india (on Reddit--not representative of the average Indian) a person posted about how they were struggling to live with 1.6 lakhs per month, and that became a meme.
This is exactly my point. Programmer in a developed country makes about 3x the average salary and about 1-1.5x the average salary of someone having a college degree. Programmer in India makes 37x average salaries. So, in a developed country you don't go into development after money (or if you do, you start your own startups, because you are definitely not going to get rich coding for cash). In India, you go exactly after money and nothing else, because the scale of money you get eclipse everything else. If i was able to get 37x the average salary, moral barriers in my work will seem a lot lower to me.
A developer-review system could handle the possibility of low quality work from savage devs, whether they reside in the Western hemisphere or anywhere else. 2 bad reviews and you're out. Actually, after the first bad review, should be very difficult to get a job again.
I had a simple idea about that. Have an org website that allows you to put you own stripe or PayPal or bitcoin, etc settings, have rating system, classification, etc. but the code is all open source and ran by coders themselves. This way people can charge direct. The org fee would be a small monthly proportionate to the cost of running infrastructure divided by users.
Well, I did not make it through the last part of the screening. If I remember correctly, you have 45 mins to solve 3 very hard mathematical/algorithmic challenges. I managed to solve only one, despite being a math/cs major with 10+ years of programming experience. Well, shame on me. I guess this way they obtain only truly genius programmers, but I suppose you don't need a top 1% mind to develop your usual mobile app...
Only one data point but I interviewed with Toptal a while back. They really focus on algorithms at the interview. I understand why--it is a scalable way to rate software developers. However, many many software problems in my experience don't require knowing how to implement algorithms, but rather which libraries make sense and an ability to map business problems to software solutions.
So, in short Toptal seems like they do some good screening, but may be optimizing for a certain kind of developer.
My experience working through Toptal has been mostly positive (although I haven't done a contract through them in quite a while).
I failed my initial application due to my inability to solve a couple of algorithm specific tests as other commenters have mentioned. I reappllied a couple of months later, did a couple of codility tests to ensure I'd pass this time, and flew through the rest of the process.
Yes, their signup process will potentially disquallify a couple of good devs, but it will also weed out a lot of bad devs that can't take the time to learn the solutions to common algorithm problems.
Once in, they have a variety of jobs available, some good, some bad. Overall I don't mind working for them. I've been happy with the Upwork dev's I've hired so far, so can't comment on if I'll hire through Toptal.
No. If you experience scam in Upwork, just pick only 'top rated' freelancers, they won't scam you, expect to pay $30 an hour and above.
If someone is better than a typical Upwork 'top rated' freelancer, he or she is probably not interested in work for hire (at least not hourly on rates one can get/makes sense to pay online). They either work full time in big companies which provides job security and stock options, make their own startups, or freelance locally to the people they know (where a much higher level of trust can be built so a higher pay is justified) at rates north of $150 an hour. They won't go to any alternative.
And yes, Upwork below top rated status just sucks.
This is the question that bothered us before we built our marketplace. These answers are helping us a lot in terms of building real value to the audience we are targeting. We are building Marketplace for Growth Marketers - wegrowth.com
I would really appreciate if you can help us build it with more value and with honest feedback what do you expect from the marketplace like this, but so far your answers gave us real value. Do you think there is something we can do better? What do you think is missing here?
Billing per hours is a non-sense for high tech projects and therefore an indefinite race to the bottom. It also poses security issues, so it is really a no go for what I do.
Absolutely. If you could figure out how to translate the Textbroker model to other types of work (it is solely a writing platform), you could probably displace Upwork as the go-to online marketplace for such work.
Yes. I have had nothing but problems with UpWork. The overall quality is just low from the jobs posted, to many of the freelancers on there and even the site itself.
I suppose the OP wants to provide such a service and is testing the waters with this question. However, I'm curious since I've never interacted with that kind of site before. It seems to me that the problems you mentioned have no obvious solution. I think in order for the idea to have potential, you're going to have to address all of those things. Do you have any ideas?
For example, how would you improve the quality of the jobs posted? Even when I interact with users in my company to give me some direction on features they want, they usually don't understand the issues well enough to tell me. And because they don't understand the issues, they always assume it is trivially easy to do. So there is almost certain to be a mismatch between what's being asked for, what's being delivered, and what the price should be.
As for the freelancers, the only way I can think of to improve the quality is to pay them more. For example, I'm a remote contractor and I think it might be fun to do some work on the side. However, I'm not going to touch this with a 10 foot pole. As I said before, I'm almost guaranteed to have an unhappy customer who wants to pay me a tenth of what it really costs to build it. The only people who will do it are people who are desperate, or people who don't know any better. Neither are likely to be coming from a large pool of highly skilled workers.
I really can't see how you could make it work, but I would be fascinated if someone has some ideas to solve these (IMHO not-trivial) problems.
I always stayed away from Freelancing sites (to work) - I tried hiring a couple jobs out, and got a guy who ripped me off (my fault, I paid via PayPal, and had no guarantees) and then a couple Indian shops that couldn't handle the basic instructions (obviously not even medium grade developers available) - I did hire one freelancer to do something for me and he did a great job.
I would see things like "Senior PHP $7/hour" and never considered working myself. However, last summer I stumbled onto Upwork (actually a post off HN was where it came from) and I saw a lot of jobs I could do for a reasonable amount of money. I've increased my average billing rate 50% since then (to where it's more than I could make locally, probably) and have found some flat-rate clients that have paid a large amount of cash for simple stuff. Once in a while, the whales come in.
It did take a while to build up reviews and I spent a lot of time applying and not getting anything back. Once I hit some sort of "critical mass" I started getting responses to nearly every job I applied to.
I did have a client who changed his mind every day, then tried to dispute the entire cost of his project (which due to him was grossly overspent) and he wound up losing eventually. It was at the time where Upwork had a lot of hatred in the blogosphere and it made me nervous that they would side with the client simply because I was replaceable. Their mediation process was a joke, a nearly robotic-like woman would periodically ask "have you resolved anything?" when it was obvious it wasn't resolved - due to the caps lock yelling between us and the cursing.
However in the end, they did go back to their hourly screenshot/activity monitor, decided only like 2% of my billing wasn't guaranteed payment and I had to refund a few bucks. If only they had done that in the beginning, it would have saved weeks of nervousness (the client was holding a negative review hostage for a refund) - but they're setup to hope disputes to fizzle out on their own and someone caves in without any intervention. That sucked.
I will say, for all the negativity Upwork generates, I have made quite a decent amount of money on it just working part time (I have a day job) and find so many jobs I could apply to that I have to pass on them, and sometimes have more work than I can handle, at rates I am quite happy with. It has been a rollercoaster, where the summer was quite hot (literally) and winter cooled down a little bit, and hasn't been as hot as it was last year. I'll have to see if this year winds up being the same, with larger priced projects that I'm well-suited for.
I think it definitely depends on the type of work you do. Development has a lot of cheap asks. I would imagine artwork/design is as well. But system administration I have flourished, often after people have been disappointed by cheap overseas labor or just junior level people doing stupid things.
I'd like to see an actual office that works like Upwork, you get given easy tasks and you rank up to get better work, or specialise in certain areas and work on a lot of similar projects.
Kind of like a development agency but with a lot of freelance developers onsite.
They could also work remote and only come to the office when a client is there.
The level of fraud is now such that it is no longer cost effective or interesting to use random freelancers. The majority of clients for freelancers on Upwork are non-technical, and it is almost impossible to convince freelancers that you are, in fact, a highly technical client. The typical project progression is that a few days we see useful work, after which there is a steady decline in quality and usefulness of code. Frequently, freelancers ignore technical or functional requirements.
Overall, it is mostly a process that appears designed to maximise billable hours whilst looking busy and producing code that doesn't actually achieve anything. This nicely circumvents dispute processes, since they can claim they did, in fact, produce working code. The fact that it took too long isn't anybodies problem except yours. General quality of code produced is typically atrocious. Rating is a meaningless metric, since the majority of clients are non technical and will base their rating on things like presence, pleasant to converse with, and final result (something that mostly does what they asked for) and typically doesn't take into account quality or if in fact this was produced at a reasonable pace.
There are so many ways to scam clients, and there are no effective ways to stop these scams. When lucky, you sometimes come across good developers that do a good job and don't mess around. I hold on to those for as long as I can, but eventually everybody moves on at some point.
I'm done with this model. It has become too expensive, too risky, and highly unpleasant overall.