Please go through this document to participate in the mock machine coding round by workat.tech
Event
Why Mock Machine Coding Round?
- In companies like Flipkart, Uber, Swiggy, Ola, Cred, etc the first onsite round is the machine coding round.
- You’re given a design problem (like design a parking lot) with a set of requirements.
- Then you need to create a clean, modular and extensible coding solution for the same.
- The code is supposed to be written in a matter of 2-3 hours.
- After the round, you sit with an interviewer who goes through your code and tries to understand your design decisions and also tries to see if your code works for all the requirements.
- The interviewer may ask you to extend your solution based on some new requirement.
- It is a pretty crucial round since most of the people get eliminated in this round and it is completely different from what everyone generally practices for.
How to prepare?
Please go through our article on ‘How to prepare for machine coding round?’.
Sample problem and solution approach
- We’ll share a problem statement on our fb group at 3:30 PM (30 mins before start of event).
- You can go through the problem statement and think about the solution for 30 mins.
- You’ll have 3 hours to code the solution and put it on Github. More details on how to do it is available in the setup section below.
- If you’re unable to complete it in 3 hours, it is totally fine. Please submit it whenever you’re done though it would be good if you can do it in 3 hours.
- We’ll try to evaluate everyone’s submission ASAP.
- We recommend you to go through the submissions of other people as well to learn different approaches and also to provide feedback.
Setup
Coding
- After the setup step, a new folder will be created in your laptop/PC with the name: mock-machine-coding-2.
- Open that folder in an IDE of your choice and start coding.
Expectations
- Make sure that you have a working and demonstrable code
- Make sure that the code is functionally correct
- Code should be modular and readable
- Separation of concern should be addressed
- Please do not write everything in a single file
- Code should easily accommodate new requirements and minimal changes
- There should be a main method from where the code could be easily testable
- [Optional] Write unit tests, if possible
- No need to create a GUI
Problem Statement
Splitwise
Submission
- After you’re done with coding, you need to commit and push your changes to github.
- You should push your changes to the master branch of your forked repository. If you’re new to git, follow the steps mentioned in the push local changes to remote section here
- Create a pull request to our master branch. If you’re new to git, follow the steps mentioned in the PR section here
Evaluation
- We’ll be reviewing everyone’s submission and try to provide feedback on how to improve through code review comments on GitHub.
- We also have some volunteers who will help with the review.
- Anyone can volunteer to review.
If you need any help regarding this event: