Skip to content

Latest commit

 

History

History
28 lines (20 loc) · 2.17 KB

CHALLENGE.md

File metadata and controls

28 lines (20 loc) · 2.17 KB

chat-test-aaron-lu

I'd like to ask you to solve a challenge. This is a small test that every technical candidate with inline goes through.

The Challenge

Create a simple chat app, and chat with me through your app.

The Constraints

  • The chat messages must be delivered in realtime
  • The chat media is up to you (we suggest text, but audio or video or finger-drawings or emojis or haptic "morse code taps" etc are fine)
  • The client can be created in any environment you'd like to use (web, native, hybrid, or anything else except Windows)
  • The chat service can be created in any platform and language you'd like to use (we suggest using Firebase, for speed of development)
  • You may use any open source or closed source libraries, hosted services, or sample code (technical originality is not important to us)
  • The functional scope and UI details are up to you, but please be aware that UX is an important aspect we will be judging
  • The chat client(s) must connect to a service that is live, so that we can actually chat. Not deployed = not complete.

The Delivery

  • Estimate the number of hours you expect to spend on this before you begin to write code, save as a commit or send to me by email
  • Write your code in a new branch of this private GitHub repo you've been added to
  • When you're ready, submit pull requests
  • I'll review your code, and may ask questions as PR comments
  • When you're done, submit a final PR that includes how long you actually spent vs your estimate - and a URL to access the live chat client
  • Then we'll chat through your app!

This shouldn't take more than a day, but it will probably take more than one hour. This is, in truth, a quite easy technical challenge (there are many readily available solutions to choose from that can deliver a solution in less than one hour of total work). But there are dimensions to the decisions you make in the test that are quite valuable signals that can let inline understand how you think, what your priorities are when building something, how much attention you pay to detail, your communication skill in a collaborative environment, and what engineering skills and knowledge you possess.