From the Upwork FAQ: "You'll need to download and use the Upwork Team App—this tool includes the Work Diary, which ensures you are guaranteed payment. By taking work-in-progress screenshots every 10 minutes, it provides proof to your clients that you are hard at work."
Screenshots every 10 minutes? You mean... screenshots of MY SCREEN every 10 minutes? That was what made me close their website and totally forget it until I've seen this submission on HN today.
I can understand why some would not like this, and maybe it's because i'm german, but i do not mind this at all. Here's why:
If i'm employed in an office and working at my work pc, not only is the machine often administrated by the company i am doing work for, and thus may have additional software in there, even if it's as simple as a VNC server. It is also on their premises and the screen plainly visible to cameras or other employees that may be around. In the case of open plan offices or offices separated with glass walls, usually straight across the entire office. When i'm in the office i'm supposed to be working, and the machine is supposed to be used for work purposes. Not for entertainment or other personal things.
Similarly, when i am billing hours in the upwork client, i am supposed to be working, not playing around. So the machine does not have private things running on it at the time i am working. The things on screen are work-related and ok to be seen by my clients.
In my view, using my past work experiences as a guide line, same as in the office, if there are things in the screen that i would not want the client to see (or my coworkers/bosses in the office to see) it means that i am doing something wrong and not separating work/private properly.
Mind, if it does happen, it is easy to delete the screenshot even before it is sent on the wire, though that forfeits 10 minutes of billing, which as explained above, is to me exactly as it should be, since i was doing private things on client time.
So i don't see it as an undue burden. It just ensures that i am actually doing what the agreement between the two of us says i should be doing.
And this has a vital advantage to me:
The client can simply look and quickly see that i was working actively on his work, and i don't need to field questions like "This is taking a long time, are you slacking off?", which i then have to answer with "this particular bit is hard and complicated, just trust me on this".
This is an admirably clear statement of a position I find almost impossible to relate to. I'm not sure I can be as lucid as Mithaldu, but I'll try to put it two ways:
1) The notion that one is "doing something wrong" by not being able or willing to enforce a strict separation between work and one's private life seems almost sociopathic. When one sells one's labour his mind and emotions are - like it or not - part of the sale. It's simply the human condition. To absolutely abrogate all of one's interests, in the service of a "boss", requires an austerity of mind that perhaps Mithaldu and some others can perform without difficulty, but which for many is impossible.
2) One could (well, I probably couldn't) make the case that the degree of exploitation that characterises all relations between "boss" and employee is sufficient to permit the importation of at least some safety valve - some kind of relaxation, be it 10 mins personal email, facebook, whatever - in compensation. Indeed if you want to take the employer's POV, it's surely a good thing.
I don't think I've been particularly accurate here but it's a fuzzy approximation of the beginnings of a response!
In both my office and self-employed work regular short breaks for various purposes are part of the norm. (Particularly in places with high percentage of smokers.) This may include short chats or phone calls outside of work purposes as well, but those are not done on work hardware, optimally, though in emergencies that's fine too, as long as they're kept appropiately short.
Note that upwork isn't running a continuous stream, but only taking screenshots every 10 minutes.
Your clients are not your bosses though, they are your clients. In your traditional office environment, for example, it would be unusual for the business's clients to require visibility of the business's computers.
No, but for example in my last office job the 3 company founders tended to be walking along the main hallway of the office a lot for various reasons, and my desk was behind a glass wall along that hallway, and in one gig i was in an open plan office where people were moving around me and everyone else all the time.
I'm from Germany too and as far as I can tell this isn't the truth for every company here. When I find clients/employers behave like that, I warn them and then I quit. This is what everyone should do. If you accept such horrendous conditions it's your fault people begin to think this is "normal".
As i said in my post, i don't mind having upwork's program send 6 screenshots an hour from my work machine while i'm working, because it keeps me from being hassled by nontechnical clients who're otherwise fine people to work with.
So i guess the only thing keeping me from making things even better than they already are is finding technical clients with Perl work that pay on the level of ~100$/h.
> When i'm in the office i'm supposed to be working, and the machine is supposed to be used for work purposes. Not for entertainment or other personal things.
I don't know one engineer who actually does this. The company doesn't own you. They can't dictate your life, thinking anything else is wrong. You own the labour, ergo you own the company, if their business process can't fit itself in your life, they can fuck right off.
Maybe cultural differences. I know a lot of people in Germany who do, and refuse the siren call of throwing Marx' books down in their bosses' offices.
Then again, workers here also enjoy a lot more protections than in other countries, so maybe it's the lack of feeling at odds with the company so much.
A footnote: Germany is notorious for its policy of keeping workers' wages down. This obviously doesn't apply to programmers, but it's worth at least adding parenthetically to your statement that workers "enjoy a lot more protections than in other countries".
It's one of the chief causes of the country's economic success. I don't have time to look up the references now. You're right about the recent rise in minimum wage though.
Maybe it's because a lot of Germans are renting their homes which creates insecurity for the unemployed and protects employers from such antiauthoritarian actions.
Compared to home owners that have mortgages to pay? (If you're the kind of person that can pay for a home with cash, you also can buffer a few months of rent easily)
+ German workers have a lot more protections from actual surveillance compared to many other countries (video surveillance, E-Mail and Internet monitoring, ...).
The actual implementation still depends on the company and the job, as probably everywhere. People that have to be there certain hours to be reachable by customers etc have different attitudes than people who can do their job and leave once they are done for the day, some people mind disruptions more, some people don't care or feel under-paid, ...
There's no insecurity for unemployed people. They're guaranteed to have a roof over their head paid for by the state. In fact employees usually have 6 months firing protection as well, further reducing insecurity.
What if you accidentally revealed a private key on the screen during the screenshot? Are you willing to forfeit 10 minutes of time to keep your SSH or whatever else uncompromised? Or are you going to trust Upwork and your client to not somehow leak it, even accidentally?
> What if you accidentally revealed a private key on the screen during the screenshot?
You replace the private key with a new one that hasn't been compromised.
> Are you willing to forfeit 10 minutes of time to keep your SSH or whatever else uncompromised?
Too late, it already is.
> Or are you going to trust Upwork and your client to not somehow leak it, even accidentally?
See above. You've already leaked it, it is now compromised and needs replacing. It sucks, but if you adopt a different approach, you're risking a lot of trouble down the road. Private keys are private. The moment you leak it, accidentally or otherwise, it's no longer private and should be replaced.
I delete the segment and enter manual time with an explanation of why i did that. Manual time isn't protected by oDesk in disputes, but in that situation it's fine to use and low risk.
There's a fairly noticable popup, that you can also configure to make a sound; and if you're really worried you can review the screenshots in your work diary at the end of the day.
I believe it gives you something like 10 seconds to click "delete" before it uploads it, but even then you can click the screenshot from the Upwork client and it'll take you to the work schedule where you can then delete it (removing the time worked / money paid for those 10 minutes).
If you're dealing with personal information you should always handle with conscious care and ensure it is only handled in a way that no data breaches are possible. This does include notifying your client that you'll be doing manual time for a task, or doing it on different hardware.
Thanks for taking it lightly, sometimes people are touchy :-)
>The difference here is of course that in the DDR you weren't asked if it's ok to listen in on you. ;)
Yes, but if enough big companies get away with this, then having a choice of "not using Upwork if you don't like it" wont matter much, because you'll be missing where most of the clients are.
In other words, you could still take the principled stance, but it will cost you.
Well, included in not being asked is also that you weren't told when you'd be listened to. With oDesk you know exactly when since it only happens when you push the button. There are no surprises involved, as opposed to the DDR where you could wake up to your door being kicked in because a week ago someone two tables over in the pub heard you gripe.
It happens, my wife send me emails during the day. I wouldn't like somebody see it. Or I want to check my personal email, even if I got an email from my other client (well, imaginary - I don't work as freelancer) why somebody should see it?
A task can be done or not dene or NN% done. Why does it matters how exactly the time spent? If something didn't work, it should possible to request actions were taken, work plans, code (even not working) etc.
Even when I don't agree with you (I may receive a mail notification with some private content) the system is totally useless as I can have an iPad next to my main computer and use it to spend all the time I want doing other stuff. Or just work with two computers. Or whatever.
I often take 15 minute walks to think about thorny problems or use a pen and paper to sketch out designs. Either of those would yield "low user activity" indicators.
It's been years since I've been an employee on any sites like that, but I still think the system is pretty bad. Just start with small projects and then scale up for high performing freelancers and don't offer repeat work to low performers.
Each snapshot is accompanied by a note of what you're working on as well (if you make one). If you're dealing with a client who'd question that, AND not accept/understand explanations, then you'd be dealing with many more problems from them as well, particularly without a work diary.
It's not that I worry. It's just that I don't think it's correct. Same way as I don't have anything to hide in my email inbox but I don't like the idea of NSA (or anyone) having reading access to it.
You don't want them reading it if you're working for them, but if they're paying you to do mailing they'd have a right to ask to take a peek in, i think.
It doesn't mean that IF i get the question, i can say "just look at the log".
It means that i have gotten questions like that and similar before (think "keep a regular logbook of what you're working on") in other jobs; and have never gotten anything like that on Upwork.
You might argue my clients are simply different, and it's possible, but i think i simply don't get things like that because they feel comfortable enough with my work and are mollified by the logs if they have worries.
I moved from Freelancer to Upwork and my initial thoughts were that the freelancers (and thus clients) on Upwork were better because of the tracking software that basically guaranteed your worker was doing what was necessary.
But in hindsight the clients are basically just as bad and the tracking software just makes remote workers feel spied on and untrusted.
It's just that I know how I work and it would not fit my model. If I have a problem to be solved I sometimes just go for a walk with my dog thinking about solutions. The client knows about that and is fine with it.
> TopTal
I had my bad experience with their application process as a developer.
I also have the other perspective as I have hired some devs from their and they do great work!
It's trying to protect people that want to hire bottom-dollar work, but not get bottom-dollar quality.
If you're not happy with the rate at which I'm getting things done, you don't need screenshots of my desktop, feel free to hire someone else and let me know how that goes.
If the freelancer has more than one client and they are "multi-tasking" by working on multiple projects and have apps like email, chat screens , web pages open etc and forget to shut them dowm before the automatic screenshot is taken, information will "leak" between one client and another.
Before starting to log time for an hourly contract, I close all browser tabs esp. HN and Facebook, close MS Outlook, set “DND” Skype status, close unneeded applications, etc.
That reduce distractions and helps me focus on the software I’m building.
As a long-time UpWork user, this has saved our butts a few times, especially with technical hires.
We've had times we had hires billing full work weeks but seemed not to be getting much done. But how do you know if it really ought to take 10 hours or 40 hours to complete a task? I've done enough research, writing, and coding myself to know sometimes the thing you think will take 10 minutes ends up taking 2 days instead.
In these cases, we can look at the screenshots, and usually rest easier seeing yes, he's working, every screenshot (just about) is on the assignment.
Sometimes we will check the screenshots and notice the guy just opens his computer up, opens a document up, and then leaves it there for an hour or more with no work. Maybe he scrolls midway down the page at the half hour mark. So then we confirm he's milking the clock and can boot him for someone who isn't going to suck us dry for nothing.
And in a few cases, we've checked screenshots, only to see that almost none of his time is spent on our project. In one case we discovered a freelancer was billing us for time he spent surfing a website called "Boob Forest" and googling instructions on how to hack the CD player in an old Honda.
Generally we will allow freelancers we've worked with for a while to use manual time. We know what their productivity is like and we established enough trust earlier that we don't need to monitor them as closely. But it's pretty important from the client's perspective to make sure you're not getting screwed with this new hire you know nothing about. And especially if it's a new task you don't have a good metric for what the productivity / turnaround time should be like.
It'd be nice if there was a reliable way to know up front who the bad apples are and who are the totally trustworthy folks, but no matter how good your hiring instincts are you'll still get it wrong some of the time. Screenshots, while perhaps an annoyance for the freelancer, are a significant downside reducer for the employer.
How does taking screenshots let you know that the person is thinking?
Okay, yeah, the guy who was looking at "Boob Forest" wasn't working, but just because you don't see a constant stream of keystrokes appearing on-screen doesn't mean a programmer isn't working.
Do you really think that he didn't do anything visible for hours and then had a magic spark that led him to delete 2000 lines? GP was careful to only point out strong negative signals.
Even if you do a lot of work on paper you're going to look stuff up online or in the code base, which is visible on screen.
That doesn't mean that this tool can't be abused in both directions, but it seems like an unfair critique of the GP post.
"Do you really think that he didn't do anything visible for hours and then had a magic spark that led him to delete 2000 lines?"
OP said something about "not seeing anything on the screen for an hour or more". Not multiple hours. I would almost guarantee that Atkinson thought about the Quickdraw problem for more than an hour before coming up with his insight. I know he wasn't "looking it up online" because, you know, that didn't exist in 1982.
If I'm thinking about something really hard while working at home, I go in my bedroom and close my eyes. That looks just like I'm sleeping, but, you know, I'm hard at work. Sometimes I take a shower.
I think the attitude that "typing" = "programming" has much to do with the popularity of languages like Java that encourage the production of reams of code with very low semantic content.
You're assuming that the OP doesn't know whether the specific task he set the freelancer to includes the possibility of a lengthy amount of planning and preparation outside the computer, without even referring to any material on the computer, or not.
That's a fairly strong assumption and your subthread here would've gone a lot better if you'd started it by asking whether your assumption is correct or not.
He is quite clearly incapable of making an accurate estimate of the amount of time, planning, and preparation involved, or he wouldn't need to spy on the programmer to assure himself that the programmer was "working". He'd know just from the number of billed hours.
You're jumping to conclusions and assuming that good programmers are losing their jobs because of inept bosses making rash decisions. While I've no doubt that does happen, in this case you're allowing a bias to fill in blanks in the story for you with incorrect assumptions.
In this case, this programmer did good work for a few weeks that we had no issue with. Then his work largely wrapped, and he announced he would continue to monitor our server for errors. He also continued to bill 40 hours a week for several weeks, which surprised me, but at first I thought (as a non-technical guy) perhaps that was necessary.
After a few weeks of him billing 40 hours a week yet not saying anything to us, I began to get suspicious. When I checked his screenshots, I discovered only one or two screenshots per entire week were actually spent on anything related to our server.
As a test, I decided to see how long it would take me to do the same monitoring he was supposedly doing. It took me about 5 minutes to log into the server and run the command the first time I did it, and perhaps 15 seconds to scan the results that came back. We only needed to do this a couple times a week.
It may be he was a totally honest guy who was just extremely, extremely slow. Far slower than a non-technical guy like me, despite his experience (and he was experienced). But it looked a whole lot like a guy who'd completed his project milking the clock to keep getting paid full-time until such time as the employer figured out what he was doing, to me.
The next programmer we brought on simply fixed the error we were monitoring for so we didn't have to monitor it anymore.
I'm obviously a lot savvier about hiring programmers and developers than I was back then (this was one of our first technical hires). The point of sharing the story was to shed some light on what the value to employers is of having this technology. Without the damning screenshots, this guy may have milked the clock a lot longer, and we likely would've been a lot more sour on hiring devs in the future. You may not care if any one individual employer gets burned, but multiply that by tens of thousands who are now less willing to pay good rates for developers, more suspicious of those they do bring on, and keep their devs on shorter leashes, and there's something to be said for employee's side too of monitoring enabling employers to get the bad apples out fast and make sure the good ones have free rein to be fruitful.
I can understand where you're coming from but surely the work done should speak for itself?
I've logged hundreds of hours on Upwork as a remote worker and while every screenshot and all the keystrokes logged, etc, were relevant to the job it does completely prevent you from (for example) checking your normal inbox in case that gets screenshotted and you don't want your client to see that.
Okay maybe you don't want your time being used by the worker to check their email, or respond to a Facebook comment or pop onto Ycombinator for 5 minutes every hour but I just found it made me feel untrusted completely.
Working for well established clients that trust one another is the way to go, I personally use Toptal: https://www.toptal.com/#employ-only-on-the-ball-software-fre... and it can employ tracking if the client desires it for hourly jobs, but it's fully optional in part and full time jobs.
Though with Toptal you have a rigorous process for the freelancers to actually get into the system which no doubt solves much of the need for the additional screencaps as proof of work.
Not being a coder myself, I have hired freelancers from Toptal on two projects. The entire experience was pretty good. The contact at Toptal took time find the the match.
On the first project we got a pretty good front-end-dev. I will say that I've learned a lot about project management in the process. On the second project we got a very skilled front-end-dev. We're still working with him daily.
It's not exactly cheap. At $70/hour I think it's fair. Don't know how the devs feel about Toptal or how much they charge but, from my point of view it's not all bad in the freelance market.
Upwork is far from perfect, but if you apply some rules of common sense and also have decade+ of tech experience, it can be useful.
I always allow manual time, but restrict the hours to 5 or 10 per week. If the hire does not meet my expectations, I move on and accept the lost money as a learning experience.
I don't give a negative review, I know that I won't rehire, but I don't think I know the person well enough to tell the world they are bad.
There are some great people on upwork. The best advice is to be really nice to your hires and if possible, have interesting work for them to do. Nobody wants to freelance for a jerk.
> There are some great people on upwork. The best advice is to be really nice to your hires and if possible, have interesting work for them to do. Nobody wants to freelance for a jerk.
I'd hope I'm one of them (albeit my profile's disabled to use another site now).
Coming from the other perspective it's really difficult to actually wade through the hundreds of "gotcha" clients that are just horrendous to work for, if you even get to the stage where you're working for them!
I've never used Upwork but I've used DeskTime for several clients and jobs and it made taking screenshots unnecessary as it tracked how much time was spent in each program and website which could be categorized, which I could then make aggregate stats of for the client for billing (and if the employer owned the master account they could make their reports).
Screenshots seems like a privacy issue unless the worker can disable them for checking email or whatever as long as that time wouldn't be billable, but it seems like Upwork could have some better ways of tracking productivity.
Screenshots every 10 minutes? You mean... screenshots of MY SCREEN every 10 minutes? That was what made me close their website and totally forget it until I've seen this submission on HN today.