Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

rpmsoftware/assessment-platform-developer

Open more actions menu

Repository files navigation

Platform Developer Assessment

In this assessment, you will demonstrate your ability to refactor code and implement common design patterns and principles used in our codebase.

Knowledge of common design patterns used in .NET C# development will be beneficial.

Assignment

The Customers.aspx page has code that renders a very simple form that allows users to add a customer to a dropdown list. The customers dropdown list is loaded from a local data repository.

The main goal is to refactor and modify the underlying code to meet common coding disciplines and patterns while also building out additional functionality for the form. Design choices should demonstrate an understanding of testing and long term maintainability considerations.

The changes should include the following:

  1. Refactoring of the model code to follow the SOLID design principle
  2. Refactoring of the Service and Repository objects to use the Command Query Responsibility Segregation pattern
  3. Add intelligent validation to the fields on the form. IE If a US State is provided, the Postal Code/ZIP field should validate that the value matches the expected ZIP code formats of ##### or #####-#### and vice versa
  4. Allow updating and deletion of customer data listed in the customers drop down list

Requirements

  1. Complete the main goal
  2. Provide a git repository with your solution using a link to a publicly accessible repository
  3. Creation of new objects is expected if SOLID design principles are implemented
  4. Use the git commit history to show progress and your thought process

Extra credit

If time allows, add unit testing for the field validations.

Delivery

  1. Create a new repository with the initial code and complete your solution on top of it, do not fork the repository
  2. Add a README-IMPLEMENTED.md with any details necessary
  3. Once the solution is built, send your solution to your hiring contact
  4. Please deliver the solution within 7 days of receiving this assessment

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
Morty Proxy This is a proxified and sanitized view of the page, visit original site.