;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Logo Pagbenk Seu dinheiro rende mais
Topo

EUA: Em home office, mulher é demitida após descobrir que empresa a vigiava

Michae Jay publicou diversos vídeos no TikTok contando que a empresa para a qual trabalhava a espionava em segredo - Reprodução/TikTok
Michae Jay publicou diversos vídeos no TikTok contando que a empresa para a qual trabalhava a espionava em segredo Imagem: Reprodução/TikTok

Colaboração para o UOL

20/07/2022 16h30

Uma mulher norte-americana descobriu da pior forma como eram os métodos da empresa para a qual trabalhava remotamente de casa, nos Estados Unidos. Ela não sabia, mas a empresa ligava a câmera de seu laptop, tirando fotos e gravando vídeos.

Leia também: E no Brasil, empresas podem vigiar funcionários e estações de trabalho?

Ela só descobriu a ação quando foi flagrada preparando um lanche na cozinha durante horário de trabalho. Ela foi repreendida e, depois que tornou o caso público, acabou demitida.

Em vídeos publicados no TikTok, com mais de meio milhão de visualizações, Michae Jay revelou que a empresa para a qual ela trabalhava a espionava o tempo todo por meio de sua webcam. Além disso, ela conta que descobriu que a empresa bloqueava o o de seu computador à plataforma de trabalho se ela se afastasse por alguns minutos do teclado.

Nos vídeos postados em sua conta, a mulher mencionou que trabalhava para uma empresa que faz campanhas para a companhia de tecnologia Klarna. A trabalhadora mostra a tela do computador congelada com uma imagem capturada pela própria webcam, onde é vista afastada da mesa do computador, na cozinha.

"Não está na mesa. Ação aplicada. Por favor, obtenha aprovação de seu superior para tentar novamente", diz a mensagem registrada na tela. "Essas pessoas bloquearam meu computador. Bloquearam meu computador porque eu estava na cozinha preparando um lanche. Eles querem que só trabalhemos [enquanto estamos] em casa", reclamou Michae.

@michaejay22 #wfh #PrimeDayDreamDeals ? original sound - MichaeJay

Em um segundo vídeo, ela menciona que a empresa não permitiria que ela desligasse sua webcam, que eles [a empresa] usavam para "monitorá-la e tirar fotos dela ao longo do dia". Além disso, ela alegou que seu computador era bloqueado se ela fosse vista se levantando de seu assento, usando seu smartphone ou se uma pessoa simplesmente entrasse na sala.

@michaejay22 Replying to @divina0722 ? original sound - MichaeJay

A mulher revelou ao portal Daily Dot que foi demitida de seu trabalho após postar os vídeos em sua conta no TikTok. Ela inicialmente disse que foi demitida por e-mail, pelo setor de recursos humanos, mas que depois foi chamada para uma reunião online. Em 15 de julho, Michae confirmou ter sido demitida.

Em vídeos subsequentes, a jovem criticou outros aspectos da empresa em que trabalhava. Ele afirma que não foi avisada, quando aceitou o emprego, que seu salário dependeria do número de horas que ela trabalhava por semana e que os gerentes muitas vezes tentavam argumentar que os funcionários costumavam trabalhar menos horas do que realmente diziam.

Ela também reclamou da linguagem pouco profissional supostamente utilizada pelos gestores e alega que a empresa apresenta alto índice de rotatividade pelos motivos apontados.

@michaejay22 Replying to @sugaladyy ? original sound - MichaeJay

Depois que essa série de vídeos se popularizou, centenas de usuários deixaram comentários para expressar desgosto por suas empresas, pela vigilância de funcionários e ambientes tóxicos de teletrabalho, gerando muita polêmica.

"Esse nível de microgestão vai mantê-los com alta rotatividade", comentou um usuário. "Menina! É hora de ir", disse outro. E um terceiro ainda deu a dica: "Você deve sempre cobrir sua câmera".

Ao ser questionada por um seguidor se ela manipulava informações pessoais dos clientes da empresa, como forma de justificar a vigilância excessiva sobre os funcionários, ela respondeu que não lidava com dados confidenciais, como números de previdência social e outras informações que requeressem um grau justificado de sigilo.