Skip to content
This repository has been archived by the owner on Sep 19, 2019. It is now read-only.

tntp/Tntp.CodingExercise

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 

Repository files navigation

TNTP Coding Exercise

You've been selected as a candidate for a position in the Software Development Team at TNTP. Great! This project is intended to see how you work in a fashion resembling real development.

You'll be tasked with taking the instructions in this project (including a user story, Behavior-Driven-Design scenarios, and some helpful pointers), and creating a working piece of software. We'll then review your submission for coding style, best practices, and accuracy in terms of meeting the requirements.

The project: "Simple Twitter", a small microblogging solution that will allow people to post a name, and a comment, and see other comments that other people have posted. Things that you'll need to include are a database (or other effective data storage mechanism) to house the comments and user names, a web-based front-end, and some validation to make sure garbage isn't making it into the data storage layer.

Let's get started!

Story

As a user,
I would like to post comments that other people can see, and see comments that other people have posted
So that I can feel connected in this crazy disconnected world

Scenarios

Given a user who has found the site
When that user wants to post a comment
Then that user should be able to supply their name, and a comment
Given a user who is posting a comment
When that user does not supply a name
Then they should not be able to post their comment
Given a user who is posting a comment
When that user attempts to exceed a limit of 140 characters in their comment
Then that user should not be able to post their comment
Given a user
When that user is viewing comments
Then they should see all of the comments in the system, in reverse chronological order (newer comments first)

Technical Restrictions

  • The project must be written in either C#/.NET (if so, please use .NET Framework version 4.5+, ASP.NET MVC 5 or above, or .NET Core), Python or NodeJS (or, a combination of the two is acceptable; this is a requirement).
  • We recommend using SQL Server, PostgreSQL, or MongoDB (all software you'll be working with at TNTP) for your back-end (this is not a requirement)
  • We highly encourage you to explore using cloud services such as Amazon Web Services and Microsoft Azure as part of your solution (this is not a requirement). Solutions developed to utilize serverless technologies are also strongly encouraged - for example, Serverless.
  • We highly encourage implementing your solution using a microservices architecture with a RESTful backend API component and a reactive frontend component.
  • We highly encourage solutions that can be deployed and tested autonomously through continuous integration using Travis CI, Appveyor or VSTS.
  • Please include unit tests that cover the scenarios listed above (this is a requirement)

Instructions

Feel free to reach out at any time to your contact at TNTP with any questions. Good luck!

About

Coding exercise for TNTP software developer candidates

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published