0% found this document useful (0 votes)
28 views1 page

Product Engineer Assignment.

The document provides instructions for a coding assignment to build a URL shortener service with a REST API that accepts a URL and returns a shortened URL, with the key requirements being readability, tests, and good code structure. It notes that the assignment should take no more than 2 hours and that Docker knowledge is not required. The assignment tasks are to build the URL shortening functionality with URL storage in memory or a text file and handle duplicate URLs by returning the same shortened URL.

Uploaded by

Akram Shuja
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views1 page

Product Engineer Assignment.

The document provides instructions for a coding assignment to build a URL shortener service with a REST API that accepts a URL and returns a shortened URL, with the key requirements being readability, tests, and good code structure. It notes that the assignment should take no more than 2 hours and that Docker knowledge is not required. The assignment tasks are to build the URL shortening functionality with URL storage in memory or a text file and handle duplicate URLs by returning the same shortened URL.

Uploaded by

Akram Shuja
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 1

InfraCloud technologies 2021

Product/Systems Engineer: URL Shortener


Please note:
- You can use the language you are most comfortable with to write the code for assignment.
- Ideally assignment should not take more than ~2 hours at the max.
- Some areas of assignment might need you to understand Docker and if you have not worked on
it before - don’t worry. You can pick it up fairly easy with documenta on or in the worst case
scenario - skip the last parts and send us working code.

- Apart from a working applica on, we care a lot about:


- Readability of code
- Tests - Unit tests definitely and more if you can think of
- A good structure to your code and well wri en file & variable names etc.
- Points marked with [BONUS] are not required - but good to have, so don’t focus on them in the
first itera on. Once you have things working and you think you have me, then try to get BONUS
items working
- If you need more me or are stuck at some point - don’t hesitate to reach out to us.

One important thing: Don’t commit all of your code as a single commit - do commit logical units of work
so we can see the work as you built it up. Intermediate/working commits won’t affect the way we
judge the end result. Please add anju-infracloud as a collaborator to the project and push to a PRIVATE
github repository.

Assignment
1. Build a simple URL shortener service that will accept a URL as an argument over a REST API and
return a shortened URL as a result.
a. If you have not used or seen a URL shortener before - please visit h ps://bitly.com/ and
try to SHORTEN a URL. The goal in this assignment is not to build a fancy UI but an API
only version of that.
2. The URL and shortened URL should be stored in memory by applica on.
a. [BONUS] Instead of in memory, store these things in a text file.
3. If I again ask for the same URL, it should give me the same URL as it gave before instead of
genera ng a new one.
4. [BONUS] Put this applica on in a Docker image by wri ng a Dockerfile and provide the docker
image link along with the source code link.

https://www.infracloud.io

You might also like