Fastenal interview experience Real time questions & tips from candidates to crack your interview

Web Developer

Fastenal
upvote
share-icon
3 rounds | 5 Coding problems

Interview preparation journey

expand-icon
Journey
I started CP in the 4th semester of college. Later, I became interested in it and started doing more and more. When internship season was about to come, and I had such low confidence, I began consulting seniors who advised me to start doing coding that is more oriented towards the OA round of internship/placement. Then I started doing coding, and I have yet to look back.
Application story
An email came from our placement group stating that the company is visiting our college along with all other details. I applied on the college's website, and later a form from the company's end was circulated, which included everything along with our fields of interest. After that, all shortlisted candidates were given test links, and the test mode was online, conducted in the CSED labs under the supervision of representatives. After the OA, shortlisted candidates were called for interviews the next day, and if they got shortlisted from this technical round, the second tech round was conducted online/offline. The last round was the HR/managerial round, which was conducted offline. That same evening, results came, and we were informed of the results.
Why selected/rejected for the role?
Yes, I was selected for the role. They called some specific people from the interview group to our placement office and congratulated us all in person. That was a very good feeling.
Preparation
Duration: 10 months
Topics: data Structures, Algorithms, Dynamic Programming, Graphs, Trees, Two Pointers, Sliding Window, DBMS, OS, OOPS
Tip
Tip

Tip 1 : Be consistent in coding; don't leave and then start again
Tip 2 : Try to give contest on coding platforms regularly
Tip 3 : Also focus on the development part and hence, make good projects

Application process
Where: Campus
Eligibility: 7+ CPI, No backlogs
Resume Tip
Resume tip

Tip 1: Don't overfill or underfill the resume.
Tip 2: It should look neat and clean; take the help of seniors who are placed in good companies and ask them to review your resume as per their resume. Then, make the changes as advised.

Interview rounds

01
Round
Easy
Online Coding Interview
Duration180 minutes
Interview date25 Aug 2022
Coding problem2

Timing was from 7 pm to 10 pm; it was a highly supervised environment, and the test was of medium difficulty.

1. GCD Sum

Hard
35m average time
55% success
0/120
Asked in companies
AdobeDunzoQuikr

Consider all numbers from 1 to ‘N’, your task is to find the sum of gcd of all pairs (i, j) such that 1 <= i < j <= N.

For example for N = 3, all pairs are { (1, 2), (1, 3), (2, 3) }.

Note :

Gcd of two numbers (X, Y) is defined as the largest integer that divides both ‘X’ and ‘Y’. 
Try solving now

2. House Robber

Moderate
26m average time
0/80
Asked in companies
SamsungAmazonQuikr

A thief wants to loot houses. He knows the amount of money in each house. He cannot loot two consecutive houses. Find the maximum amount of money he can loot.

Problem approach

Now the question is how to rob a circular row of houses. It is a bit more complicated to solve than the simpler question. This is because, in the simpler question, whether to rob num[lo] is entirely our choice. However, it is now constrained by whether num[hi] is robbed.

Since we already have a nice solution to the simpler problem, we do not want to discard it. The question then becomes how we can reduce this problem to the simpler one. Extending from the logic that if house i is not robbed, you are free to choose whether to rob house i + 1, you can break the circle by assuming a house is not robbed.

For example, 1 -> 2 -> 3 -> 1 becomes 2 -> 3 if 1 is not robbed.

Since every house is either robbed or not robbed, and at least half of the houses are not robbed, the solution is simply the larger of two cases with consecutive houses, i.e., house i not robbed, break the circle, solve it, or house i + 1 not robbed. Hence, the following solution: I chose i = n and i + 1 = 0 for simpler coding, but you can choose any two consecutive ones.

Try solving now
02
Round
Easy
Face to Face
Duration100 minutes
Interview date27 Aug 2022
Coding problem2

1. Palindrome Partitioning

Moderate
25m average time
75% success
0/80
Asked in companies
QuikrCultfitExpedia Group

You are given a string 'S'. Your task is to partition 'S' such that every substring of the partition is a palindrome. You need to return all possible palindrome partitioning of 'S'.

Note: A substring is a contiguous segment of a string.

For Example:
For a given string “BaaB”
3 possible palindrome partitioning of the given string are:
{“B”, “a”, “a”, “B”}
{“B”, “aa”, “B”}
{“BaaB”}
Every substring of all the above partitions of “BaaB” is a palindrome.
Problem approach

Here, we’re dividing the string into substrings and checking if they’re palindromes or not. We’re storing all the palindromic substrings in a temporary vector, using the helper function to divide them into substrings. In our helper function, our base condition is if the checking index is equal to the string size, which means we are at the last index, so we simply push back the temporary vector to our answer vector. Otherwise, we’ll check for palindromes in the rest of the string, take a loop, divide it index by index, and check for palindromes. If it’s a palindromic substring, we’ll push it to the answer vector, and then we’ll call the helper function again for the rest. After the function returns, we’ll pop back the element from the temporary vector, which means there is another substring that is not a palindrome. Time complexity: O(n*2^n).

Try solving now

2. Combination Sum IV

Moderate
0/80
Asked in companies
OYOFastenal

You are given an array of distinct integers and you have to tell how many different ways of selecting the elements from the array are there such that the sum of chosen elements is equal to the target number tar.

Note: Two ways are considered the same if for every index the contents of both the ways are equal example way1=[1,2,3,1] and way2= [1,2,3,1] both way1 and way 2 are the same.

But if way1 =[1,2,3,4] and way2= [4,3,2,1] then both ways are different.

Input is given such that the answer will fit in a 32-bit integer.
For Example:
If N = 3 and tar = 5 and array elements are [1,2,5] then the number of possible ways of making sum = 5 are:
(1,1,1,1,1)
(1,1,1,2)
(1,2,1,1)
(2,1,1,1)
(1,1,2,1)
(2,2,1)
(1,2,2)
(2,1,2)
(5)
Hence the output will be 9.
Problem approach

Step 1: I used the brute force approach. At each index, if the element is less than the target, we can always form a combination by picking the current item. The brute force method is based on this idea.

Step 2: I applied the top-down approach using dynamic programming. By drawing the recursion tree, we can see that for a target, we perform the same calculations repeatedly. This can be avoided by storing the number of combinations obtained for a given target, so we don't waste time recalculating it at each recursion.

This can be done by maintaining a DP array where dp[i] denotes the number of combinations possible with target = i. Initially, all elements in the DP array will be initialized to -1, indicating that the number of combinations for that target still needs to be calculated.

Once the number of combinations for sub-target = i (where 0 ≤ i ≤ target) is determined, we can use it to calculate the number of combinations for the larger target.

I also took some help in between whenever I got stuck.

Try solving now
03
Round
Easy
HR Round
Duration45 minutes
Interview date29 Aug 2022
Coding problem1

It was a 45-50 minute round, focused on my resume and some HR questions along with built-in scenarios and what I would do in those situations.

1. Basic HR Questions

What type of personality do I have?
Why do I have this personality?
Where do I want to see myself in 5 years?
What made me choose this company?

Problem approach

Tip 1 : Be confident
Tip 2 : Always sound positive
Tip 3 : Make sure that you have eye contact and don't ever portray someone as negative person in any situation you are given.

Here's your problem of the day

Solving this problem will increase your chance to get selected in this company

Skill covered: Programming

What is recursion?

Choose another skill to practice
Similar interview experiences
Software Developer
3 rounds | 8 problems
Interviewed by Fastenal
1507 views
0 comments
0 upvotes
Software Engineer
3 rounds | 8 problems
Interviewed by Fastenal
2771 views
1 comments
0 upvotes
Software Development
3 rounds | 12 problems
Interviewed by Fastenal
2047 views
1 comments
0 upvotes
Software Development
3 rounds | 6 problems
Interviewed by Fastenal
1819 views
0 comments
0 upvotes