rauanisanfelice / valinor-1

:man_technologist: Venha trabalhar na @FieldControl e ajude a melhorar a prestação de serviços no Brasil. Esse repo contém desafios de programação para avaliarmos o seu código, organização, estilo e boas práticas :)

Home Page:https://fieldcontrol.com.br

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

👨‍💻 Vaga para apaixonados por criação de software

A empresa

Somos um SaaS (Software as a service) para empresas que possuem prestadores de serviços externos.

Entregamos controle, organização e melhor relacionamento com o cliente para empresas de Climatização, Segurança eletrônica, Telecom, Provedores de internet, Montadoras de móveis, Empresas de limpeza, enfim, qualquer empresa que possui uma equipe de campo para realização de serviços.

Nossa missão é melhorar a prestação de serviços no Brasil.

Te convido a conhecer um pouco mais da Field e da nossa cultura pelo nosso instagram: @FieldControlApp

Origem

Um ponto importante é que a Field foi fundada por desenvolvedores, só por esse motivo você pode TER CERTEZA que aqui as coisas são muito diferentes das empresas tradicionais.

Aqui utilizamos princípios ágeis DE VERDADE para criação de software. Veja bem, não estou falando de post its ou reuniões em pé.. E sim de: Pair programming, Continuous Integration, Continuous Deployment e claro, testes automatizados.

Condições

  • Período: Integral
  • Onde: Qualquer lugar :)
  • Benefícios: Alimentação, Plano de saúde, Seguro de vida, Pluralsight, Alura, Amazon Books <3

🏡 Você pode ler sobre nossa cidade no G1, Infomoney ou aqui na Exame.

Trabalhamos com uma boa infraestrutura, nosso hardware é muito bom (você vai ter um notebook f#d@ com ssd e dois monitores 💻 💻) e possuímos um ambiente de trabalho agradável:

A empresa não possui hierarquias e você é convidado e desafiado a colaborar com todas as frentes de trabalho. Ou seja, aqui todas sugestões são bem vindas!

Ah, e quando a Field bate meta (quase sempre) o frigobar fica assim:

Queremos a cada dia mais flexibilidade e continuar animados a evoluir nossas aplicações.

Nosso trabalho é baseado em autogestão. Só existe uma regra de convivência: É proibido murmurar! Aqui as opiniões são discutidas, resolvidas e sempre chegamos a um consenso para melhorar a nossa convivência. Isso não foi descrito por um gerente de RH e sim por um desenvolvedor de software.

Oportunidade

Estamos em busca de desenvolvedores Frontend FODAS e APAIXONADOS para fazer parte do nosso time de produto.

Na Field, o seu dia-a-dia será repleto de:

[
  'GitHub & Git <3',
  'Muito, muito e muito JavaScript',
  'Object-oriented programming, SOLID Principles & Design Patterns',
  'Práticas e princípios ágeis (Pair programming, Continuous Integration, Continuous Deployment)',
  'Testes de software (unitários, integração, e2e..)',
  'Desafios de escalabilidade',
  'Desafios de alta disponibilidade',
  'Micro services e aplicações distribuídas',
  'Amazon Web Services',
  'PAAS & Cloud Services',
  'Serverless apps',
  'AngularJS, Angular',
  'REST APIs',
  'GraphQL APIs',
  'Material Design',
  'Open source software'
]

Nossa stack é praticamente toda em JavaScript: Node.js, SPA's e Hybrid Mobile Apps.

Acreditamos que bons desenvolvedores usam a melhor ferramenta para cada problema, então, para resolver alguns problemas bem específicos usamos a melhor alternativa disponível, por isso, temos uma pitada de C#, Java e PHP também.

Nossos servidores estão na AWS e usamos a núvem como plataforma. Temos apps rodando no Elastic BeanStalk, S3 e Serverless na AWS Lambda :)

Antes do conhecimento técnico, temos preferência pelo perfil pessoal. Ou seja, se você for esforçado, interessado e curioso.. é isso que importa pra a gente! :)

Requisitos principais

  • P R O A T I V I D A D E
  • Sentimento de D O N O
  • Boa comunicação e trabalho em equipe :)
  • Proficiência em JavaScript e Typescript
  • Experiência com CSS e HTML Semântico
  • Experiência sólida com Angular, Ionic
  • Familiaridade com princípios de UX
  • Familiaridade com APIs REST, GraphQL e WebSockets
  • Ter prática em testar software!

Os desafios de programação

Se você realmente ama trabalhar com desenvolvimento de software e quer desafios pra sua carreira.. escolha um (ou todos) dos desafios abaixo, faça um fork desse repositório e let the hacking begin

<challenge> Frontend Developer Iniciante </challenge>

Faça esse teste apenas se você é realmente iniciante, beleza? :)

Esse desafio consiste em recortar o psd anexo nesse repositório (Clique aqui para fazer o download) para uma landing page.

Você pode usar criar os estilos na mão ou usar um framework já pronto como o Twitter Bootstrap.

A idéia é que a landing seja responsiva e deve conter todas as seções do PSD:

  • Header
  • Section para funcionalidades
  • Section de imagens
  • Section do time
  • Slider com depoimentos
  • Section para call to action
  • Footer

A dica aqui é que seu HTML e CSS seja bem escrito e com uma boa semântica :)

<challenge> Frontend Developer </challenge>

Desenvolva um SPA que permitirá que um usuário pesquise repositórios no GitHub (os resultados devem ser paginados) e exiba informações relevantes de cada repositório (URL, descrição, contagem de watchers, de estrelas, issues e etc..)

Basicamente, uma tela quase parecida com essa: https://github.com/search?utf8=%E2%9C%93&q=node&type=

Você pode usar Twitter Bootstrap, Google Material ou qualquer outro framework de interfaces da sua preferência.

SPA Framework? Aqui usamos bastante AngularJS e Angular, mas use o que você preferir.. React, Vue, BackboneJS (existe ainda?) ou qualquer outro :)

Escreva seu código com clareza e use a estrutura adequada do MVC para escrever o aplicativo e use as melhores práticas ao escrever JavaScript, CSS e HTML.

URLs úteis:

URL Descrição
https://api.github.com/search/repositories?q=bootstrap Exemplo de URL da API para pesquisar pelo nome do repositório
https://api.github.com/search/issues?q=repo:username/reponame URL da API para exibir issues de um repositório

Documentação da API https://developer.github.com/v3/search/#search-issues e https://developer.github.com/v3/search/

A propósito, se você achar a API do Github um pouco boring demais, escolha outra coisa que você goste.

Há algumas APIs bem legais disponíveis na Internet, por exemplo: Star Wars, Marvel ou Cats, whatever, a escolha é sua.

Dúvidas?

Abra um issue ou me mande um e-mail em luiz@fieldcontrol.com.br, fechou? :)

Avaliação

Entre os critérios de avaliação estão:

  • Código limpo e organização
  • Testes de software (unitários e integrados)
  • Semântica
  • Documentação de código
  • Documentação do projeto (README)
  • Segurança

Entrega

Você deve enviar a resolução do desafio via pull request nesse mesmo repositório :)

Gostariamos de entender como você pensa e as decisões que você tomou durante o desenvolvimento. Então, quando for enviar seu pull request, por favor responda:

  • Qual ferramentas e bibliotecas (libraries, framework, tools etc) você usou
  • Porque você optou pela tecnologia X e não a Y
  • Quais princípios da engenharia de software que você usou?
  • Desafios e problemas que você enfrentou e como você resolveu
  • O que você entende que pode ser melhorado e como fazer isso

About

:man_technologist: Venha trabalhar na @FieldControl e ajude a melhorar a prestação de serviços no Brasil. Esse repo contém desafios de programação para avaliarmos o seu código, organização, estilo e boas práticas :)

https://fieldcontrol.com.br