Notes from CDC

Yash Kunwar
5 min readDec 4, 2023

--

Hey! My name is Yash Kunwar. I am a 4th year undergraduate pursuing Integrated MSc in Mathematics and Computing from Department of Mathematics at IIT KGP. I got an internship offer from UIpath for summer of 2024. I was shortlisted for Quantbox and was in extended shortlist for Intuit, UIpath and Oracle. I had a CG of 8.43 when appearing for CDC.

Preparation

I prepared for SDE and quant roles. I started preparing at the end of sem 6 since I was unsure of appearing for CDC because of my interest in research. I had done competitive programming before but had little to no experience in DSA. I did CP in java at the end of my first year for about 3 months. I reached specialist with a rating of 1588. When I started preparing in sem 6 I switched from Java to CPP because of the community and how favorable CPP is for DSA/CP. I watched some lectures from algozenith. I was doing problems from c2oj and a2oj ladders in may. However most of those were too adhoc to be useful for interviews so I switched to cses which is a fairly standard set of problems. I also did problems from interviewbit. I gave div3, div 2 and edu rounds on codeforces, starter rounds on codechef and beginner rounds on atcoder. By the end of june I reached 1707 on codeforces and 2055 on codechef. I did not have a lot of experience on the software side so I did a couple of projects during the may and june. In july mid I did the brainstellar problem set. I had done a dbms course in sem 6 but had not done oops or networks.

I would recommend making the decision of whether to appear for cdc earlier than I did. Unless one is completely sure they want to go for research, CDC is a good and safe opportunity. Deciding early allows one to participate in hackathons or inter halls which can come in handy while filling up CV. Same goes for contest ranks and ratings.

My experience in CP from first year although old, did make prep easier for me. CP should not be confused with DSA. They sure have a significant overlap but doing one can be a very different experience from the other. For CDC DSA should be one’s primary focus.

Also regardless of CDC I would recommend doing basic DSA before CP. In fact dedicated courses for DSA often go in depth of certain topics which may not even be required upto codeforces div 2D. That is not to say that contests are easy but that a person who may not be well versed with DSA can with practice and time do well in contests. DSA is more about DSA and contests are more about problem solving.

Atcoder beginner contests, CF div 3, CF edu and leetcode are very good resources for DSA contests. Div 2 are more on the CP side. Contests are good for learning stress and time management.

CSES is beautiful. It gives you the standard problems topic wise in a no bs manner. Focus more on understanding relevant problems and different approaches rather than submitting poorly written solutions since you can access them later when required. This also helps a lot while revising. Also make sure to do oops.

Use CPP not Java. Do cses. Tried and tested.

Tests

Coding tests started around 14th july. Selection criteria can vary. Most companies completely selected on basis of test performance. Some did take cg into account. Quantbox shortlisting criteria was sort of random. I think I got in because I am an INMO awardee. For Intuit I had done 3.5 or 4 out of 4 problems. For UIPath I had done 3 out of 3 except for 2 cases in 3rd problem. For Oracle I had done all the problems but did not make it to the initial shortlist. Coding contests help in preparing for coding rounds but there are some differences. Some tests were neither CPish nor DSAish. In some tests the order of difficulty of problems was not clear so make sure to read all the problems. If you are not able to solve a problem then you must not get hung up on it. You can regret it all you want after test but for the test duration do not obsess over problems you cannot solve or test cases you miss. Also make sure to weigh in whether a full solution for 1 problem would be better than two half solutions. Do not shy away from submitting suboptimal solutions as partial marking is there on hackerrank.

UIPath had 3 problems which were fairly dsaish. One was based on binary search+bfs, one was based on min of every consecutive k elements in an array and one was a two way dijkstra from node 1 and node n to all nodes.

Interview

I appeared for Quantbox interview and UIpath interview. In Quantbox they asked 1 easy question on parity. Second was a probability related question. Third was a variant of ant on a line moving left and right and last was a standard dice expectation question.

UIpath interview had 3 rounds. First two were DSA with two questions each. 3 were medium easy and 1 was hard. I gave a solution for the hard one but wasn’t sure of its correctness. Then there was the HR round. I was asked about my interests, quant vs software vs plans for higher studies and what I thought about software since that is what they were looking for. I had prepared an intro and some hr questions but more or less I remained truthful about what I had done.

I was fairly nervous for the interview until the Quantbox one. Different things work for different people. A friend recommended that I do not go into the interview expecting anything. If I was fine with whatever the result was I would have nothing to worry about. I think the problem solving nature of the Quantbox interview made me feel like I was in a familiar setting. Just make sure to explain your approach while trying anything.

Make sure to stay in touch with your peers and friends. It will help you stay updated on resources, notifications and keep your prep and above all sanity in check. Do not get disheartened. In the long run you can always do what you want to. You will have ample opportunities.

--

--