Giter Club home page Giter Club logo

be_assessment's Introduction

be_assessment

Task

Your task is to create a dockerized service, claim_process to process claims.

Requirements

  1. claim_process transforms a JSON payload representing a single claim input with multiple lines and stores it into a RDB.
    • An example input (in CSV format) - claim_1234.csv is provided. Note that the names are not consistent in capitalization.
  2. claim_process generates a unique id per claim.
  3. claim_process computes the “net fee” as a result per the formula below. “net fee” = “provider fees” + “member coinsurance” + “member copay” - “Allowed fees” (note again that the names are not consistent in capitalization).
  4. A downstream service, payments, will consume “net fee” computed by claim_process.

Task Instructions

  1. You have up to 120 min to complete your solution. Mail [email protected] a copy/link to your solution.
  2. Feel free to make and reasonable assumptions, state them and proceed if anything is unclear.
  3. You’re free to choose any Python based API framework as you see fit such as FastApi/Django/Flask. As noted earlier the solution must be dockerized.
  4. Use sqlite as a db and any ORM of your choice such as SQLModel/Sqlalchemy/Tortoise.
  5. Please add data validation for “submitted procedure” and “Provider NPI” columns. “Submitted procedure” always begins with the letter ‘D’ and “Provider NPI” is always a 10 digit number. The data validation should be flexible to allow for other validation rules as needed. All fields except ”quadrant” are required.
  6. Write pseudo code or comments in your code to indicate how claim_process will communicate with payments. There are multiple choices here but propose a reasonable solution based on:
    • What needs to be done if there is a failure in either service and steps need to be unwinded.
    • Multiple instances of either service are running concurrently to handle a large volume of claims.

Evaluation Criteria

  1. Clean, documented code and avoidance of anti-patterns
  2. Functioning code
  3. Consideration of corner cases

be_assessment's People

Contributors

deepakramas 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.