Skip to content
This repository has been archived by the owner on Oct 7, 2022. It is now read-only.

TradeRev/tr-coding-challenge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 

Repository files navigation

Software Developer Coding Challenge

Purpose

This challenge is part of the interview process for Software Developer position at TradeRev. Its purpose is for candidates to demonstrate their problem solving ability, development experience in a mildly realistic development context and for us to establish a starting point for a technical on-site interview down the line.

Functional Spec

You have been tasked with building a simple online car auction system which will allow users to bid on cars for sale and with the following funcitionalies:

  • A simple auction bidding system
  • Record a user's bid on a car
  • Get the current winning bid for a car
  • Get a car's bidding history

Bonus:

  • Unit Tests on the above functions
  • Develop a UI on web or mobile or CLI to showcase the above functionality

Expectations

  • You may use any appropriate libraries to help
  • Use the language that you feel you are the strongest
  • Please fork this (https://github.com/TradeRev/tr-coding-challenge) and keep it public until we have been able to review it
  • Provide a README to run/build the project and explain anything that you leave aside

Assessment

Your application will be reviewed by our engineers. We do take into consideration your experience level. If you are invited for an on-site interview, we will go through your solution together with you so that you can explain the thoughts behind your technological, tooling, architectural and algorithmic decisions.

We value quality over feature-completeness. It is fine to leave things aside provided you call them out in your project's README.

The aspects of your code we will assess include:

  • Architecture: Conforms to SOLID principles.
  • Clarity: Code is easily understood and communicative. README is clearly and concisely explains the problem and solution. Git commit history is consistent, easy to follow and understand. Technical tradeoffs explanations.
  • Correctness: App operates as intended, no crashes and warnings.
  • Code quality: Code is easy to understand, maintainable and extendible. Coding style is consistent and follows the language’s coding conventions. No obvious bugs in the code.
  • Technical choices: Appropriate choices of libraries, databases, architecture etc.
  • Testing: Automated tests quality. Tests are flexible and maintainable upon requirment changes. Not looking for full coverage (given time constraint) but just trying to get a feel for your testing skills.
  • UX: Intuitive and pleasing to use.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published