Git Product home page Git Product logo

backend-challenge-1's Introduction

Descrição

Considere uma senha sendo válida quando a mesma possuir as seguintes definições:

  • Nove ou mais caracteres
  • Ao menos 1 dígito
  • Ao menos 1 letra minúscula
  • Ao menos 1 letra maiúscula
  • Ao menos 1 caractere especial
    • Considere como especial os seguintes caracteres: !@#$%^&*()-+
  • Não possuir caracteres repetidos dentro do conjunto

Exemplo:

IsValid("") // false  
IsValid("aa") // false  
IsValid("ab") // false  
IsValid("AAAbbbCc") // false  
IsValid("AbTp9!foo") // false  
IsValid("AbTp9!foA") // false
IsValid("AbTp9 fok") // false
IsValid("AbTp9!fok") // true

Nota: Espaços em branco não devem ser considerados como caracteres válidos.

Problema

Construa uma aplicação que exponha uma api web que valide se uma senha é válida.

Input: Uma senha (string).
Output: Um boolean indicando se a senha é válida.

Embora nossas aplicações sejam escritas em Kotlin e C# (.net core), você não precisa escrever sua solução usando elas. Use a linguagem de programação que considera ter mais conhecimento.

Pontos que daremos maior atenção

  • Testes de unidade / integração
  • Abstração, acoplamento, extensibilidade e coesão
  • Design de API
  • Clean Code
  • SOLID
  • Documentação da solução no README

Pontos que não iremos avaliar

  • docker file
  • scripts ci/cd
  • coleções do postman ou ferramentas para execução

Sobre a documentação

Nesta etapa do processo seletivo queremos entender as decisões por trás do código, portanto é fundamental que o README tenha algumas informações referentes a sua solução.

Algumas dicas do que esperamos ver são:

  • Instruções básicas de como executar o projeto;
  • Detalhes sobre a sua solução, gostariamos de saber qual foi seu racional nas decisões;
  • Caso algo não esteja claro e você precisou assumir alguma premissa, quais foram e o que te motivou a tomar essas decisões.

Como esperamos receber sua solução

Esta etapa é eliminatória, e por isso esperamos que o código reflita essa importância.

Se tiver algum imprevisto, dúvida ou problema, por favor entre em contato com a gente, estamos aqui para ajudar.

Nos envie o link de um repo público com a sua solução.

backend-challenge-1's People

Contributors

wenndersantos avatar vfmunhoz avatar bvieira avatar wenndersantositau avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.