Giter Club home page Giter Club logo

tp2-analytics-2022-c's Introduction

TALLER DE PROGRAMACION 2

Instrucciones de resolución del examen recuperatorio

Es tu primer día en tecnoshare.com luego de un intenso entrenamiento de 10 semanas por fin tenes la oportunidad de mostrar lo que aprendiste, y tu potencial como desarrollador backend en nodejs con express y mongodb.

Luego de abrir el correo encuentras un mail de tu Líder Técnico con tu primera asignación!! 💪

Bienvenid@! estuvimos esperando por horas que llegaras, tenemos varias tareas criticas y prioritarias en nuestro backlog. Por favor presta mucha atención a las instrucciones. No dudes en preguntarme cualquier cosa, aunque generalmente estoy muy ocupado resolviendo problemas heredados de las rotaciones de los desarrolladores.

En el presente repositorío encontrarás un proyecto de nodejs que ya tiene codigo base del backend con el que vamos a trabajar. Te aconsejo que sigas los siguientes pasos para armar tu entorno de trabajo.

  1. Realizar un Fork del presente repositorio
  2. Realizar un clone del presente repositorio
  3. Instalar las dependencias
  4. Solicitar las variables de entorno que contiene la conexion string a mongodb (antes de preguntar, revisa el chat, seguro estan ahí)
  5. Ejecutar el servidor web de la api REST con el script de npm start-dev si queres trabajar con nodemon (tendrías que instalarlo) con start solo, tambien funciona. El backend se conecta con una base de datos Mongodb en la cual se encuentra la base de datos sample_analytics con las collections llamadas accounts, customers y transactions que contienen las transacciones de 500 clientes.
  6. Proba el endpoint que ya se encuentra desarrollado: /api/customers debería retornar un json con los 500 clientes. Esta implementado el paginado, aunque es totalmente opcional. Sí por algun motivo no llegase a funcionar, solicita asistencia.

TUS TAREAS SON LAS SIGUIENTES POR ORDEN DE PRIORIDAD

  1. Necesitamos un endpoint que nos devuelva un cliente (customer) particular por email
  2. Necesitamos un endpoint que retorne los clientes que tengan al menos 4 cuentas (accounts)
  3. De la otra collectios accounts necesitamos conocer las cuentas que tengan un limite de 10.000
  4. Necesitamos un listado de los clientes que tienen una cuenta con 10.000 de limite

SI TE DA EL TIEMPO DAME UN MANO TAMBIEN EN...

  1. Necesitamos conocer todas las transacciones transactions que realizo el cliente: Christopher Watson en todas sus cuentas

Desde ya muchas gracias por la colaboración! 😉 como te comente en la entrevista soy muy detallista en la prolijidad del codigo y la performance cada detalle cuenta, no me gusta mucho las cosas fuera del estandar de APIREST, sin embargo si no estas seguro, es mejor que lo resuelvas como puedas y me dejes notas en el readme.md del repo, para que yo pueda probar.

Intrucciones para la entrega

Si ya terminaste o son las 10:00 asegurate de seguir los siguientes pasos para la entrega:

  1. Completar el listado de endpoints, especificando parametros si los hubiera, mas abajo en este mismo archivo.
  2. Realizar un commit a tu repo con un mensaje con tu nombre completo
  3. Realizar un push a tu repositorio
  4. Realizar un pull request a mi repositorio

Listado de endpoint

-GET /api/customers?pageSize=[pageSize]&page=[page]

-GET /api/customers/email body: { "email": "[email protected]" }

-GET /api/customers/accounts

-GET /api/customers/name body: { "name": "Christopher Watson" }

-GET /api/accounts/limit

tp2-analytics-2022-c's People

Contributors

pavmaup avatar pablofernandezhinojosa 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.