Problem Statement for Interviews
created on 03 January 2011 and tagged under
joinproblem
We love to challenge our candidates, so we ask that you complete this assignment as part of your application. You can take as much time as you like to complete the assignment. Please get back to us whenever you’re done.
The focus of the solution is on the quality of your code, rather than the time required to complete it.
Should you have any further questions, please do not hesitate to contact us.
Instructions
If you are applying for iOS
- We would suggest that you that you build a native app using Swift.
- Objective-C would do too, but we would prefer Swift.
- We prefer code that is modular and testable. And this sometimes requires you to go beyond MVC and dive into MVVM, MVP and others.
If you are applying for Android
- We would suggest that you build a native app with Java.
- We prefer that you use MVP or even MVVM.
- It would also be great if you could use Android data binding APIs
If you are applying for Node.js
If you are applying for React
Super bonus
- For adding test coverage to anything that you submit.
The Problem
You need to build out a small application to fetch the weather forecast of multiple cities
Step 1 : Get an API Key
- Head over to OpenWeatherMap and register for an account
- Once you are in, go to your personal page and get the API key
Step 2
- The app should accept multiple city names from the user
- Based on the city names entered, the app should show the the weather forecast for the 14 days for each city
Step 3
- Find the current city using GPS
- Display the weather forecast for the current city for 14 days
Step 4
- When you’re ready, push the latest source code to Github (or any other free git repo) and send us a link
You can use the following API calls to fetch the weather forecast of a given city
More details for the API can be found here
We help companies create loveable apps for iOS, Android and the Web. If you would like to contact us for a consulation, a quote or to take us out for a beer, you can send us an email at
[email protected]
Like this post? Subscribe to our
newsletter