My interview experience with Altimetrik for Python developer

chanduthedev
3 min readSep 6, 2023

--

Today(6th Sep 2023) I attended an interview for python developer and the person who interviewed me was Rahul Chowdhury. I am really impressed with the way Rahul interviewing. I am not sure whether I selected or not, but I am really happy with the interview. Let me explain how interview went.

Rahul: Tell me about yourself.

Me: I explained about my experience and my skill set

Rahul: Have you worked on Django?

Me: I never worked on any real time project, but worked on personal project for learning purpose.

Rahul: Its OK, lets discuss on python topics. Do you know about decorators in python?

Me: yes, and I explained about decorators

Rahul: Can you share your screen and write one simple decorator in python?

Me: I shared my screen and wrote decorator in VS Code editor

Rahul: He was happy and he asked me write a program to arrange of integers in such a way that all -ve numbers should come first and +ve numbers should come next.

Me: I analyzed and its kind of sorted order. So I implemented sorted logic and it was working

Rahul: Sorting will take O(n*n) time complexity, is there any way to improve this code?

Me: I am struggling to get the solution and he suggested one clue.

Rahul: You can use pointers to navigate(This clue helped to get the solution).

Me: With that help, I can able to get the solution by taking two pointers one from left and another form right and got the solution.

Rahul: He was happy and asked another question in Python. What is the life cycle of the rest call of firing request from any client and receiving response in python?

Me: I explained like when request receive at the flask server, basing on the rest end point, it will execute corresponding method and returns back the response.

Rahul: how authentication worked in that case?

Me: You can use Authentication decorators to authenticate before processing api end point any further. Or you can also token validation, rate limit etc before processing request by using decorators.

Rahul: Then he asked about database question. how do you design a schema for many-to-many relationship.

Me: In fact I am completely lost here. I don't know what to do.

Rahul: You can take an example like song and artists. An artist can sing many songs and a song can be sung by any artist.

Me: I got a clue and I took two tables songs and artists and I trying to solve.

Rahul: You can use temporary tables if you want(This is a big clue for me).

Me: Then I created song-artist table and artist-song table and then final table contains song-artist and artist-song table.

Rahul: yeah, that is correct. Lets take final question.

Rahul: Assume, there are two lists of integers of same lengths numerator and denominator, sort them basing on fraction values.

E.G:

Input: n = [1, 3, 4, 5, 6] d = [1, 2, 3, 4, 5]

Output: n = [1, 6, 5, 4, 3], d=[1, 5, 4, 3, 2]

Me: I explained the logic with sort method.

sort([(n,d,n/d), key=item(2)])

Rahul: This is a good approach. Now you have conditions. You shouldn’t use inbuilt sort method or division operator.

Me: I was trying and one hour is about to complete

Rahul: I think I have another meeting, do you have any questions for me?

Me: Initially you asked about Django. What is your current tech stack? if I select where I need to work?

Rahul: We are using Fast API and Kafka for data streaming. front end I think Angular we are using but not sure. And we use GitHub enterprise for source control system.

Me: Thank you Rahul.

Overall Interview was really good. All interviews should be like this. In the interviews candidates may not remember all the topics due to many reasons. Candidate should be selected basing on how approaches the problem and trying to solve it. If he/she unable to proceed, a simple clue/help may unblock and he/she can proceed further. That is what Rahul did for me. In fact I am completely lost when he asked about Many-to-Many question, I was trying to skip the question by saying unable to proceed. But Rahul has given clue by saying you can use intermediate/temporary tables which unblocked me and got the solution.

I want to thank Rahul Chowdhury for doing this kind of interview. I tried to find him in LinkedIn, but I couldn’t find him. If anyone find him, mention here.

Thanks a lot Rahul!!!

--

--

No responses yet