Este projeto de foco pedagógico e de modo algum foi feito para ofender alguém.
Meses atrás eu resolvi entrar na plataforma Turing. O que me atraiu para a plataforma foi a possibilidade de contratação part-time e não exigir das pessoas que estão na plataforma, fluência em inglês: ao mesmo tempo que eu poderia continuar no meu emprego fixo, teria um valor extra no fim do mês e mesmo eu não tendo o melhor inglês do mundo, poderia alcançar uma vaga internacional.
Esses dias, fui fazer uma entrevista técnica com uma empresa chamada JusticeText. Uma empresa com uma ideia legal, com tecnologias legais. Fiquei super empolgado, tanto que estava até mesmo disposto a abandonar meu atual trabalho para focar na empresa.
No dia da entrevista, entrei numa Call com Leslie Jones-Dove, me apresentei e foi pedido que fosse feito um teste ao vivo. As coisas começaram a dar errado, já com o DNS do site do teste bloqueado para o Brasil. Depois Leslie pediu para eu fazer um código React no Visual Studio. Enquanto eu estava abrindo o Visual Studio na minha máquina, ele mudou para eu fazer o código dentro de um Google Docs. Eu estava fazendo o código do jeito que eu sei fazer e o mesmo não queria que eu fizesse daquele jeito. Neste momento o Visual Studio abriu. Eu resolvi mudar para o Visual Studio, pois é uma IDE que eu estou mais acostumado, já que a principal linguagem que eu trabalho é o C#. Do nada o Leslie solta: cara, isso não está funcionando. Provavelmente você nem está me entendendo. Obrigado pelo seu tempo.
Eu sinceramente fiquei extremamente humilhado e ofendido com a postura dele, afinal estava em uma entrevista para trabalhar ganhando um salário de Junior: é pouco nos EUA, mas no Brasil, graças ao dólar em alta, era um ótimo salário. Aqui no Brasil é algo absolutamente deplorável o que aconteceu. Evito guardar mágoa das pessoas, mas preciso tomar alguma atitude quando acontece algo que me corrói por dentro. Por este motivo, estou fazendo este código e deixando publico para quem quer que seja consiga ver e utilizar para o que bem entender.
A fim de ser fiel ao que eu defendo de ser ético quando está se fazer uma prova, eu trouxe o mínimo de influências externas. Pode ser que o código não seja o melhor do mundo, mas foi o que eu pensei no momento.
Segue o descritivo do teste:
Implement a tic tac toe game meant to run in the browser.
There should be two players (sitting at the same computer), each of whom can play either an X or an O. The game goes as such: Player one will play X in some spot on the board followed by Player two who will play O on some other spot. Once there are three X’s or three O’s in a row, column, or diagonal, a winner should be declared and the game should end. If there is no winner, a tie should be declared.
Use React.js components to create the game UI, state, and state updating logic.
Feel free to Google any libraries/function calls you need. You may assume that any imports/exports you need to make have already been made
Please do not worry about styling until after the core logic/requirements have been fulilled.
This project was bootstrapped with Create React App.
In the project directory, you can run:
Runs the app in the development mode.
Open http://localhost:3000 to view it in your browser.
The page will reload when you make changes.
You may also see any lint errors in the console.