Code Monkey home page Code Monkey logo

codingskills's Introduction

Coding Skills Challenge

The below describes a problem statement, make sure to read all the instructions in this readme before you start.

Business Requirement:

  • Company A have acquired Company B, A and B sell some common products, sourced from suppliers (Sometimes the same supplier, sometimes a different one).
  • The business wants to consolidate the product catalog into one superset (merged catalog).

There are possibilities like:

  • Company A and B could have conflicting product codes (SKUs).
  • Product codes might be same, but they are different products.
  • Product codes are different, but they are same product.
  • You should not be duplicating product records in merged catalog.
  • Product on merged catalog must have information about the company it belongs to originally.

The business provided the following information that may help in identifying a matching product:

  • Products have associated suppliers, each supplier provides 1 or many barcodes for a product,
  • A product may have many suppliers,
  • If any supplier barcode matches for one product of company A with Company B then we can consider that those products as the same.

So, you have following entities to play with:

You need to produce code in your preferred language which can demonstrate following:

Initial load

  • Mega merge: All products from both companies should get merge into a common catalog

BAU mode

  • A new product added in Catalog A
  • An existing product removed from Catalog A
  • An existing product in Catalog B got new supplier with set of barcodes

Sample Data

Please refer input folder for following CSVs:

  1. catalogA.csv - Products for Company A
  2. catalogB.csv - Products for Company B
  3. suppliersA.csv - List of Suppliers for Company A
  4. suppliersB.csv - List of Suppliers for Company B
  5. barcodesA.csv - Product barcodes provided by supplier for company A
  6. barcodesB.csv - Product barcodes provided by supplier for company B
  7. result_output.csv - The correct results based on the above sample data

Deliverables.

  • Application should be able to accept above data as csv files from input folder and must produce a merged catalog as a csv file in output folder.
  • Proving your code works via unit testing is highly encouraged.
  • Spend as little or as much time as you like ⌚
  • The code you produce can be in any language ⭐
  • The output of the efforts ❗ must be committed back into a Public Repo in Github and the URL shared back for review.
  • Document instructions on how to install and run your solution in the README.

codingskills's People

Contributors

egous-bunnings avatar sumit-bunnings avatar tosumitagrawal avatar

Watchers

 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.