├── .gitignore ├── Application experiences ├── 2020-21 │ └── Maverick Derivatives │ │ └── Junior Quant Trader.md ├── 2021-22 │ ├── Akuna Capital │ │ └── Junior Quantitative Researcher.md │ ├── Ava Security │ │ └── Graduate Software Engineer - 2022 intake.md │ ├── Bloomberg │ │ └── Software Engineer.md │ ├── Checkout.com │ │ └── Graduate Data Analytics Engineer.md │ ├── Epoch Capital │ │ └── Quant Analyst.md │ ├── Facebook │ │ └── Software Engineer, University Grad.md │ ├── HSBC │ │ └── Markets & Securities Services - Quantitative Finance - Full-Time Associate Programme.md │ ├── Improbable │ │ └── Graduate Applied Scientist, Defence - 2022 Start.md │ ├── Maven Securities │ │ └── Quant Researcher.md │ ├── Microsoft │ │ └── UK New Grad.md │ ├── Mustard Systems │ │ └── Graduate Trading Operations Analyst.md │ ├── Quora │ │ └── Software Engineer - New Grad 2022 (Remote).md │ ├── SIG │ │ └── Quantitative Trader - 2022 Programme.md │ ├── Samsung │ │ └── Graduate Embedded Software Engineer.md │ ├── TPP │ │ └── Graduate Software Developer.md │ ├── Tibra │ │ └── Quant Trader - Junior.md │ ├── Virtu │ │ └── Quantitative Trading Analyst.md │ └── Visa │ │ └── Software Engineering and Testing Graduate.md ├── 2022-23 │ └── Oracle │ │ └── Software Engineering Internship.md ├── 2023-24 │ ├── Microsoft │ │ └── Research Software Engineer.md │ ├── Rokos Capital Management │ │ └── 2024 Quant Graduate Programme.md │ └── Tibra │ │ └── Quant Trader Developer.md └── readme.md ├── Getting the feedback through GDPR.md ├── Online Assessments.md ├── README.md └── media ├── Flow_Traders_Example_Math_Test_2020.pdf ├── General-Coding-Skills-Evaluation-Framework-CodeSignal-Skills-Evaluation-Lab-Short.pdf ├── Practice-Math-Test_4.pdf ├── akuna1.png ├── bloomberg1.png ├── bloomberg2.png ├── bloomberg3.png ├── bloomberg4.png ├── facebook1.png ├── facebook2.png ├── flow_traders_pt1_excel.xlsx ├── general-coding-assessment-framework.pdf ├── image1.png ├── image10.png ├── image11.png ├── image2.png ├── image3.png ├── image4.png ├── image5.png ├── image6.png ├── image7.png ├── image8.png ├── image9.png ├── javascript-core-assessment-framework.pdf ├── maven1.png ├── microsoft1.png ├── microsoft2.png ├── microsoft[2]1.png ├── microsoft[2]2.pdf ├── microsoft[2]3.pdf ├── mustard1.jpg ├── mustard2.png ├── mustard3.png ├── mustard4.png ├── readme.md ├── readme1.png ├── readme2.png ├── rokos1.pdf ├── rokos2.pdf ├── rokos3.png ├── rokos4.png ├── samsung1.jpg ├── samsung2.jpg ├── samsung3.jpg ├── samsung4.jpg ├── samsung5.jpg ├── samsung6.jpg ├── samsung7.jpg ├── sig1.png ├── sig2.png ├── sig3.png ├── sig4.png ├── sig5.png ├── sig6.png ├── sig7.png ├── tibra1.png ├── tibra2.png ├── tpp1.png ├── tpp10.png ├── tpp11.jpg ├── tpp12.jpg ├── tpp13.jpg ├── tpp14.jpg ├── tpp15.png ├── tpp16.png ├── tpp17.png ├── tpp18.png ├── tpp19.png ├── tpp2.mp3 ├── tpp3.jpg ├── tpp4.jpg ├── tpp5.jpg ├── tpp6.png ├── tpp7.png ├── tpp8.jpg ├── tpp9.png ├── visa1.png └── visa2.png /.gitignore: -------------------------------------------------------------------------------- 1 | /.idea/ 2 | -------------------------------------------------------------------------------- /Application experiences/2020-21/Maverick Derivatives/Junior Quant Trader.md: -------------------------------------------------------------------------------- 1 | ## Maverick Derivatives 2 | 3 | ### Parameters 4 | * Role: Junior Quant Trader 5 | * Location: Amsterdam, Netherlands 6 | * Applied: February 2021 7 | * Round 1 interview: March 2021 8 | * Round 2 interview: June 2021 9 | 10 | ### IQ examination 11 | 12 | This is automatic and happens immediately after application. It's a classic IQ test - 50 questions, 15 minutes and there is no option to skip and return back to questions. The test has mathematics, English (including vocabulary) and logical reasoning. 13 | 14 | ### HackerRank examination 15 | 16 | 75 minutes, 4 questions. This contains two LeetCode Mediums, one LeetCode hard (DP) and another LeetCode hard (DP), the last one which I basically skipped since I was running out of time. While the HackerRank exam technically allowed any language, I was asked to code only in Python. 17 | 18 | ### Round 1 interviews 19 | 20 | This was with (recruiter). Bear in mind - this person may be HR, but he has an above-average academic background and does know his subject matter well enough. Except that I didn't know economics or finance and hence I was basically trashed in that interview. He did say that I had a lot to prepare, but invited me to try again once I learned some of the necessary background. 21 | 22 | So I did that, and after some time set up another interview with him. This one went well enough for him to allow me to do the next round with the traders, though advised that I work on some topics (such as the Black-Scholes model). Which I did. 23 | 24 | ### Round 2 interview 25 | 26 | That (with a pair of traders) was _way_ different from what I expected. Instead of asking me on what I thought I would be asked on, they starting picking on me immediately on my lack of a formal trading background or experience and point-blank told me that I wasn't ready and they were looking for someone with more experience. 27 | 28 | ### Notification of rejection 29 | 30 | I was effectively told that from the Round 2 interview, and a more formal one came a lot later. I also earned an application ban for one year. 31 | 32 | ### Takeaway 33 | 34 | I am not sure what they were looking for. The job description was clear enough in that I didn't need experience, otherwise I would have not applied in the first place. Plus, (recruiter) actually misled me by telling me to work on topics that were very different from what I would be asked for - if you knew that the traders would not accept someone with no experience, why would you give them false hope? The good news is that I did learn some useful stuff in options that did help me to an extent when I would take Computational Finance later. -------------------------------------------------------------------------------- /Application experiences/2021-22/Akuna Capital/Junior Quantitative Researcher.md: -------------------------------------------------------------------------------- 1 | ## Junior Quantitative Researcher 2 | 3 | ### Parameters 4 | 5 | * Role: Junior Quantitative Researcher 6 | * Location: Remote (Europe) 7 | * Applied: December 6, 2021 8 | * Notification of failure: February 1, 2022 9 | 10 | ### HackerRank entrance exam 11 | 12 | This stage consisted of three LeetCode mediums (one simulation-based greedy, one standard greedy, one simple memoisation/pre-computation), to be done in either C++ or Python. Interestingly, 13 | 14 | * they said to pick any two to do; if the third is done, it would be considered as bonus 15 | * they explicitly told me to focus on code cleanliness and readability, which is quite rare to see. 16 | 17 | I did the test in C++, getting all 3. My focus was naturally on correctness, though I did pay more attention to cleanliness and readability, and spent some time on that. For some reason, I was running into a weird problem with Q1 - one or two test case would randomly fail which strangely wasn't always reproducible (that is, half the time it would report that I got 100%, and ~90% in the other half). I couldn't fully track down the reason for the issue, but suspect it may be some kind of subtle memory leak. Either way, I had more than satisfied the requirements. 18 | 19 | ### Mathematical video interview/exam 20 | 21 | After that, I had to complete a one-way "video" interview. This was odd, because normally a video interview would be non-technical, but this wasn't that. 22 | 23 | ![img.png](../../../media/akuna1.png) 24 | 25 | It was five mathematics questions, ranging from tricky probability questions (for instance, asking me to work with moments) to checking for diverging integrals. For me, it went **horrendous**, and I think I actually got only one right (given that I resolved the questions after the interview). You were given five minutes to think _and_ answer the question, and I struggled a lot with that, especially given that I was not permitted to, for instance, refresh my memory of what a moment was. I also had to give the final answer! 26 | 27 | I finished this stage thinking that I would get thrown out right after. To my surprise, I somehow did _not_ fail; really not sure how. 28 | 29 | ### Technical interview 30 | 31 | > I was told not to share the questions by the company, and have to respect that. 32 | 33 | I was then asked to schedule a video interview with a member of the quant team. I was given a tricky probability problem involving expectations. And ... I flunked it. I found it hard trying to understand what the interviewer was hinting at, and kept on applying conditioning for some reason. I knew I was getting somewhere, but I have to admit that I did not manage to solve the problem. 34 | 35 | I was also asked questions on my CV and project. For some reason, even though I was told that I would be asked coding questions (and the interview was conducted via HackerRank's CodePair platform), I wasn't given any. Maybe because I did so poorly on the probability problem. 36 | 37 | ### Notification of failure 38 | 39 | Was by email, generic. A request for feedback returned only this: 40 | 41 |
42 | 43 | Hi Leader, 44 | 45 | Thank you for your note. In terms of feedback from our Quant team, we decided to proceed with candidates who demonstrated even stronger proficiency in probability and statistics, as well as strong coding skills. 46 | 47 | We wish you the best! 48 | 49 | Akuna Capital Recruitment 50 | 51 |
52 | 53 | I know, tell me something that isn't obvious... Also, I find the mention of coding skills odd given that I did OK in the coding exam and that coding wasn't tested in the technical interview. 54 | 55 | ### Takeaway 56 | 57 | This failure (and writing this up) made me ashamed at myself for being utterly incompetent. -------------------------------------------------------------------------------- /Application experiences/2021-22/Ava Security/Graduate Software Engineer - 2022 intake.md: -------------------------------------------------------------------------------- 1 | ## Graduate Software Engineer - 2022 intake 2 | 3 | ### Parameters 4 | 5 | * Role: Graduate Software Engineer - 2022 intake 6 | * Location: London, United Kingdom 7 | * Applied: January 26th, 2022 8 | * Sent take-home exam: January 27th, 2022 9 | * Notification of failure: February 15th, 2022 10 | 11 | ### Take-home entrance exam 12 | 13 | I was given a set of PDFs: a "general" exam with four questions to be done in any language, and four files that correspond to four programming languages (Java, C, C++ and Python). The instructions were vague: 14 | 15 | > The next step, having reviewed your CV is to run you through a couple of our coding tests. I have attached a selection of these and we ask you to complete the General test as a mandatory requirement, followed by one or two of the specific language tests. If you claim a certain language skill on your CV, we'd like to see how strong you are in that language. We are a polyglot environment but do use Go, C, Python, Scala across a lot of the backend. These tech tests are designed to be relatively simple but allow for a thoughtful answer. 16 | 17 | What does that mean? Am I supposed to complete one or two of the language-specific tests? At what point do I have to do a certain language to demonstrate my "strength" in that language to you (because I don't know if you're looking to test my "basic" knowledge of Python)? What does "thoughtful" even mean? A lot of ambiguity. 18 | 19 | Anyway, I looked at the questions. 20 | 21 | * The general entrance exam was straightforward: four LeetCode easies. I finished them off in Java. 22 | * The Java entrance exam was a little trickier: the first one asking me to implement a linked list library from scratch (which I did purely from memory) and a LeetCode easy. 23 | * The C exam was harder, and cannot be directly compared to LeetCode problems since none of them test algorithmic knowledge as such - these problems look like they would fit in a university exam on C. The first one was related to linked lists, the second one asked me to identify undefined behaviour in C and the third one was something I couldn't properly understand but wanted me to do some bit/byte reversal. Again, not comparable to LeetCode. 24 | 25 | I did not attempt the C++ and Python exams, but from what I saw, 26 | 27 | * The first question of C++ appears to be related to OOP but not something I knew how to do; the second was recycled from Q1 of the C exam. 28 | * For Python, the second seems to be something I could do, I didn't know what a Python "generator" was for Q1 (but otherwise appeared straightforward). 29 | 30 | So on the day I got the exam, I finished the general, Java and two of the C problems, stopping at Q3 since I was stuck at an ambiguity. I asked the company, who told me to resolve it myself... 31 | 32 | The problem however was that I just was not able to get the time to sit down to complete Q3 of the C exam as a result. The issue was that I was hit with a time-consuming university coursework, and that, combined with the generally high module load, meant that I was unable to submit it even two weeks after getting the follow-up answer from the company. It must be noted that this is **not** the fault of the company. 33 | 34 | ### Notification of failure 35 | 36 | Out of the blue (since I was still planning to get done with Q3 at that time when I was able to), it seemed that the company thought that I was done with the test and sent me this: 37 | 38 |
39 | 40 | Hi Leader 41 | 42 | Thanks for completing our tech tests. I'll pass these on to our engineer who marks and them and feedback your results to you either directly or via your agent asap. 43 | 44 | _As a heads-up, unfortunately, we don't offer detailed feedback on your results, they have a relatively simple scoring approach with either a No, Ok, Good and Excellent. We tend to proceed on Ok and obviously, a No would suggest that you would not do well in the coding challenges during the technical interviews. We don't offer further explanations behind theses tests as whilst they are relatively simple in appearance they have some challenging nuances which require an intelligent answer and it is this that the engineer is looking for. Where we have discussed tests in the past, we found that these ultimately ended up on the internet and hence rendered the tests void. We do appreciate your time taking these tests but ultimately they are designed to prevent further time being wasted at the face to face interviews, which could easily be longer than 3hrs._ 45 | 46 | Fingers crossed. 47 | 48 | Regards 49 | 50 | (recruiter) 51 |
52 | 53 | A couple of notes there: 54 | 55 | * Does the company really expect new graduates to have an "agent"? Or is this test something that is served for all candidates? I don't know. 56 | * The reasoning between them not providing feedback is interesting. They claim that apparently, providing feedback would cause candidates to leak the questions on the internet? But then I don't need feedback to leak the questions on the internet... Not sure why they make such a claim since it almost looks like they are trying to make up an excuse. 57 | 58 | Anyway, a day I got the actual failure email: 59 | 60 |
61 | 62 | Hi Leader 63 | 64 | Thanks for completing the tech tests. Your answers have now been marked and unfortunately, they have not been regarded as strong enough to invite you on to the next stage. 65 | 66 | Unfortunately, we do not offer any specific details behind your test results. 67 | 68 | Sorry but thanks for having a go and your interest in Ava - Unified Security, I wish you all the best with other opportunities. 69 | 70 | Regards 71 | 72 | (recruiter) 73 | 74 | Ava
75 | (email)
76 | (phone number) 77 | 78 |
79 | 80 | Right. So I failed. But why? At this stage, without having any idea, there are a couple of possibilities: 81 | 82 | * I was penalised for not supplying an answer to Q3 of the C section 83 | * I was penalised for something else, such as poor code quality. This would also mean that not completing the test was a good idea, because I would have most likely failed anyway. 84 | 85 | But then I remembered that the GDPR was a thing, and invoked it. 86 | 87 | ### The GDPR attempt 88 | 89 | I decided to immediately use the GDPR route, sending the below to [dpo@avasecurity.com](mailto:dpo@avasecurity.com): 90 | 91 |
92 | 93 | Hello, 94 | 95 | I would like access to all of the recruitment data you have (specifically the ones used to make a decision on my application) with me with respect to the Graduate Software Engineer – 2022 intake role. This includes full details and feedback with respect to the take-home test I did. 96 | 97 | This is a formal GDPR request to access this data. 98 | 99 | Regards,
100 | Leader Board 101 | 102 |
103 | 104 | I got this a couple of days later: 105 | 106 |
107 | 108 | Hi Leader, 109 | 110 | Thank you for your email, your request has been received and will be processed shortly. 111 | 112 | 113 | Kind Regards,
114 | (a human name) 115 | 116 |
117 | 118 | What happened next was not something I expected from my limited prior experience with the GDPR. About a week after I sent the initial GDPR request email, I got a call from an unknown number (which I missed since I normally keep my phone on silent). I called that number back. 119 | 120 | It was the recruiter, wanting to discuss my GDPR request. The below gives a summary of what he said: 121 | 122 | * He noted that it's the first time they got a GDPR request of this nature. 123 | * They noted that they didn't actually have any data on my entrance exam performance; only that they store the final result (which was a "No" in my case). The only other thing they had was some notes when they reviewed my application. 124 | * Repeated what was mentioned when I was told I completed the entrance exam (that they don't offer feedback because they think that it would end up being leaked in the internet). Mentioned that they recycle the same exam for thousands of candidates (!). Apparently, some candidates are so overt that they plagarised entire solutions from the internet, including any typos or errors in that past solution! 125 | * Offered to have the engineer basically look over at my solutions. While he explicitly said that the engineer will not comment on the right answer or even on what they are looking for. Still, that would be something. He then asked whether I would be fine to treat the GDPR request as resolved in that case, to which I agreed. 126 | 127 | Interesting. Now I had to wait to see what the engineer who marked my exam had to say. I got this five days later: 128 | 129 |
130 | 131 | Hi Leader, 132 | 133 | Following our chat last week and your formal GDPR request, the engineering manager who wrote and marks the tech tests has provided the following insight in why you failed the test. This does not provide you with the answers or our scoring approach but hopefully promotes an insight into where you didn't respond in the direction that we look for. 134 | 135 | * General Q2 - think about duplicate elements, and efficiency (it can be made faster by exploiting the sorted nature of the input arrays). Also think about the side effect on the passed arrays 136 | * C Q1 - several things wrong with this one 137 | * the function prototype on line 23 is wrong, so the head element can never be removed if it is even 138 | * think about the condition on line 37 , given the assignment immediately preceding it 139 | * memory leaks 140 | * no NULL-ing of the next pointer in malloced nodes 141 | * shoudln't be necessary to malloc or free nodes to solve this 142 | * and more ... 143 | * C Q2 - there are some missed issues 144 | * C Q3 not answered - the answer to his question about the perceived ambiguity is there in the question itself 145 | 146 | If you are happy with this response, please let me know and I will close down the GDPR request. 147 | 148 | Many thanks
149 | (recruiter) 150 | 151 |
152 | 153 | So let's now compare this with some of my commentary: 154 | 155 | * Firstly, would I have passed if I did not bother with the C part at all? I mean, they had little to say on the Java side it seems... 156 | * Regarding the general Q2, this stems from a lack of clarity on what you are looking for. It is clear from the feedback that you wanted efficiency. While I did notice this when I was doing the test, I thought you wanted an elegant solution and that's what I did: a crisp one-liner that however was not as efficient. How am I to know that? Given that they did not complain about the other questions in the general test, I infer that they were looking for efficient code and not raw elegancy. 157 | * Regarding the C bit, at first I thought _fair enough_ because I didn't properly validate my code given the timing issues described earlier. Now looking at the code I wrote: 158 | * He said that I didn't have to use mallocs or free to solve this. I find this odd because you want me to create a new list... but thinking about this now, OK I think I could have done this without malloc. Fine. 159 | * Then they referenced memory leaks. Fair enough, I didn't call ``free``. 160 | * I'll need to spend more time to comment on the other parts of the feedback for that question. But I see the issue with my approach, and will admit that my haphazardness in this one was detrimental. 161 | * For Q2 of C, I will need to take a further look to see what else I could be missing. I did test the code they provided, so was a bit surprised to be told that there are more. But it's possible. 162 | * For Q3, I looked at the question again and cannot agree with the comment. The example still contradicts with what the question wants me to do, and I am still seeing the ambiguity. 163 | 164 | Am I happy with the response? No. But this feedback is definitely better than nothing and indeed would suffice fo the purpose of closing the GDPR request. 165 | 166 | ### Takeaway 167 | 168 | * I did poorly in this test, especially Q1 of the C portion. It seems that they were looking for people with strong C implementation skills - of which mine was a bit rusty and it showed. I think if I didn't bother with trying the C part, I probably could have passed. 169 | * Strange reasoning for not giving feedback I'd say. I should also mention that in the call, they mentioned that they did provide feedback similar to what I was given to one other candidate. Why did you (the company) then tell me that _no_ feedback could be provided? Only when I invoked the GDPR did you admit that you _can_ provide some feedback. This is disappointing and not something I expect from any company. 170 | * It does not help anyone when you don't tell what you expect from a candidate, in my opinion. -------------------------------------------------------------------------------- /Application experiences/2021-22/Bloomberg/Software Engineer.md: -------------------------------------------------------------------------------- 1 | ## 2022 Software Engineer 2 | ### Parameters 3 | 4 | * Role: 2022 Software Engineer 5 | * Date of application: February 1, 2022 6 | * Round 1 interview: March 29, 2022 7 | * Round 2 Part 1 interview: April 12, 2022 8 | * Notification of failure: April 13, 2022 9 | * Feedback call: April 28, 2022 10 | * Location: London, United Kingdom 11 | 12 | ### Prelude 13 | 14 | I've found Bloomberg's initial process weird. For some reason (at least for the UK), they didn't list the application on their public recruitment platform, which made me confused and I wasn't sure whether they simply weren't hiring for new grad at all (as Morgan Stanley did for the 2020-21 recruitment season). In reality, some of my peers were contacted by a recruiter (via LinkedIn) and invited to apply though a private link. I was sent a screenshot from someone who got such an invitation, and it was mentioned that a specific referral source should be specified. Of course, I was _not_ invited (and by extension, not eligible to apply then). 15 | 16 | Now, I was told a few months later that they indeed put up a [public job posting](https://careers.bloomberg.com/job/detail/93145), and that's when I applied. 17 | 18 | ### First round interview 19 | 20 | A few days after applying, I was invited to set up first-round interviews, and was asked to set up times for it. I wasn't even sure if they had slots (given how late it was). I looked at the form after a week, but then all the slots were gone, and was given new ones. I eventually chose to have it on March 29 (there were earlier slots, but I was having finals around that time). 21 | 22 | Now, for the interview itself (over the phone with HackerRank CodePair, no video). It was with (interviewer), and I was first served stock questions (why Bloomberg, describe a project, tell me about yourself) - preparing for them helped. Then I was given [this LeetCode problem](https://leetcode.com/problems/design-underground-system), which according to [this page](https://github.com/krishnadey30/LeetCode-Questions-CompanyWise/blob/master/bloomberg_6months.csv) was the most popular Bloomberg problem in the last 6 months. 23 | 24 | ![img.png](../../../media/bloomberg1.png) 25 | 26 | I knew how to do this one (did not realise it was that popular, otherwise would have told), and was naturally asked to describe my approach and then code it. Remembering from my [Facebook failure](../Facebook/Software%20Engineer,%20University%20Grad.md), I did ask the interviewer on the code quality, to which I was told that it didn't matter. I did note that the interviewer asked about whether there was a way to avoid having to use a pair (I suspect he was hinting to string concatenation though I didn't realise that during the interview). Then I was asked to write it using a class (as shown in my answer above) and was asked to describe the time and space complexities, which was straightforward for me. There were also some followups (for instance, the original form of the problem assumed that users cannot lose cards, and I was asked what would happen if that was possible - and I gave the idea of performing a form of garbage collection to ensure that the hashmap size does not simply grow). At the end, I was given the chance to ask question, which I did, and that was the end, in about 53 minutes. 27 | 28 | I thought I did OK overall, but was surprised and a bit concerned that I was asked only one question (given that some on the internet reported getting two). Turns out I did _not_ fail this round. 29 | 30 | ### Getting to the onsite 31 | 32 | The recruiter told me to give at least three time/date combinations to set up the 90 minute onsite, which as it would turn out to be, was only one of the three stages (the other two would be system design and the HR part), and would happen separately (which confused me, since it _felt_ as if these two rounds would be part of the same day, when it wasn't). I did that, and then was scheduled for 11:30 am on April 12. 33 | 34 | Just before the interview, I was waiting for a phone call, but there wasn't any incoming. I was confused on whether I made a mistake and checked the email, only to realise that it was actually a _video_ interview (fortunately, I had that ready in equipment and was able to quickly join). 35 | 36 | ### The onsite: Part 1 37 | 38 | There were three people in the call, one of which was just "shadowing" and hence not really "interviewing". 39 | 40 | As with the first round, I was served some stock questions (why Bloomberg, describe a project), but also a "cheeky" question (as defined by the interviwer) that asked me about resolving conflicts in a team project (but then I've never had such a case, as I had to, in a somewhat confused form, explain). 41 | 42 | Now about the questions. The first question was a variation of [this LeetCode Medium](https://leetcode.com/problems/all-paths-from-source-to-target/), with the main difference being that the end node was given, and crucially, it could not be assumed that the graph was acyclic (what was _not_ possible were multigraphs): 43 | 44 | ![img.png](../../../media/bloomberg2.png) 45 | 46 | ![img_1.png](../../../media/bloomberg3.png) 47 | 48 | I started off by giving a classic DFS approach (as shown above) - it wasn't particularly efficient mainly because I hadn't yet implemented backtracking (that is, I was at that point depending on the ``LinkedHashSet`` being passed by value as otherwise different recursion states will have the same set of visited notes, which will mess things up). Though I knew that, and was asked on how this issue could be fixed, which I correctly told them was to backtrack by inserting a line to delete the node that was added after completing each recursion. 49 | 50 | Then I was asked to describe the time complexity, and that's where I unexpectedly messed up. Now, what would be the worst-case scenario for this problem? When the graph is complete (Kn). But then what's the time complexity of this scenario? Unfortunately, I mixed up paths with edges and incorrectly said that it was O(n2) (as the number of edges in a complete graph is (n2 - n)/2). The problem is that we're actually performing depth-first search across the **paths**, and the interviewer had to correct me and actually guide me towards showing that it was actually O(n!), which was quite embarrassing. The space complexity part was OK. 51 | 52 |
53 | Poking deeper 54 |
55 | The problem I ran into was finding the number of paths in a complete graph. The interviewer used this approach in guiding me: 56 | 57 | Start from the first node. How many ways are there to go from one node to another? _n_ - 1 (because we can go to any node other than the node we started). From that node, how many ways can we go? _n_ - 2. Considering that we multiply the number of ways at each stage, the result is (_n_ - 1)(_n_ - 2) .. 1, which is (_n_ - 1)!, though I recall saying _n_! instead. 58 | 59 | When I first researched this on [Stackoverflow](https://math.stackexchange.com/a/2406930), I thought that was also wrong, but when writing this up, I realised the confusion (the Stackoverflow answer was additionally referring the length of the edge), and the above answer is indeed right. 60 | 61 | Regardless, this should have **never** happened. 62 |
63 |
64 | 65 | Now, for the second question. It was the [Collatz conjecture problem](https://leetcode.com/discuss/interview-experience/1504782/bloomberg-phone-interview-1042021-collatz-conjecture-rejection), and I was told that it should be considered from a production point of view. 66 | 67 | ![img_2.png](../../../media/bloomberg4.png) 68 | 69 | I was asked 70 | 71 | * what the time complexity was. I assumed it was to the naive version of the problem, and said that it isn't possible to derive a time complexity bound, which is actually [correct](https://cs.stackexchange.com/a/54268) given that it's a conjecture. 72 | * to explain what issues the naive version could have in production, to which I said that overflow (as 3*n* + 1 need not remain in the integer space if _n_ is an integer) and time can be issues, and when told that they weren't issues, pointed out that the recursion stack space can be exhausted. 73 | * as a result to the above, I was asked how the performance can be optimised in an amortised manner, to which I righly said that the problem can be simplified through memoisation. My first answer to this didn't actually work for the stated example (it wasn't wrong, just not applicable) and I had to rewrite my solution as a result, roughly resembling in the solution above. I also made some minor errors along the way, which was pointed out (and fixed). 74 | * to explain how the code could be cleaned up. I did make some suggestions, but doubt the interviewers were convinced. I should note that unlike the phone interview, they did seem to care about code quality even for the first question, which I tried, but again doubtful on how well I did there. 75 | 76 | And after that, just like the phone interview, I was given the chance to ask questions, and that was the end, in about 63 minutes. 77 | 78 | ### Notification of failure 79 | 80 | When researching about Bloomberg, I found out that supposedly a failure is notified much faster than a non-failure. And in my case, that was true, because the next evening, I got the failure email: 81 | 82 |
83 | 84 | From: Human Resources HRes (BLOOMBERG/ 731 LEX)
85 | Sent: 13 April 2022 18:27
86 | To: Leaderboard
87 | Subject: Bloomberg Follow-up 88 | 89 | Hi Leader 90 | 91 | Thank you once again for your application to 2022 Software Engineer position and your interest in 92 | Bloomberg. 93 | 94 | Unfortunately, we have decided not to proceed with your application at this time. We really appreciate 95 | the time and effort you dedicated to the application process with us here at Bloomberg. We know there 96 | are a lot of companies out there and we hope you know how happy we are that you chose us. The 97 | decision to pass on your candidacy was not an easy one and we encourage you to keep current on our 98 | careers site for future opportunities. 99 | 100 | We would be happy to offer you feedback on your interviews with us. Please send an email to 101 | engrecruit3@bloomberg.net if you would like to arrange a call. Unfortunately we are not able to provide 102 | written feedback. 103 | 104 | We wish you all the best for your future endeavours. 105 | 106 | Kind regards, 107 | Engineering Recruitment Team 108 | Bloomberg LP 109 | 110 | NOTE: , email entrylvl_eng@bloomberg.net with any questions 111 | 112 | Stay connected with us on social media!
113 | Follow us on Twitter (@BloombergCareer) and at facebook.com/BloombergCareers Please note that this 114 | mailbox is unmonitored and replies will not reach the Bloomberg Human Resources Department. Please 115 | do not reply. 116 |
117 | 118 | What's interesting is that they explicitly offered to share feedback. Why they can't do it via email but can by phone (given that the phone method is more involved for both parties) isn't something that I know, but I was still pleasantly surprised given that it's very rare for a company to do that. I immediately emailed back confirming my interest in the feedback call. 119 | 120 | ### The feedback call 121 | 122 | Was via Zoom. Annoyingly, the first two times no one showed up and I was simply left idling. The third time, the recruiter came 15 minutes late, which made me ask her on why it wasn't possible to simply send the notes via email. Her answer was unconvincing - said that it's "policy" and that other companies do not give feedback at all (which may be true, but doesn't answer my question). Regardless, here's a paraphrased version of the notes I took in the call: 123 | 124 |
125 | 126 | **Bloomberg failure** 127 | 128 | _First phone round_ 129 | 130 | Subway transit time. Good communication, motivation etc. For technical part, could do well with almost no help. Could answer questions about time and space complexity with no issues. Discussed follow-up properly, provided verbal solution and the engineer thought that was no need to code it up. Good answers to stock questions such as "Why Bloomberg" (mentioned combining tech and finance). No issues overall. 131 | 132 | _Second technical round_ 133 | 134 | asked Airport routes. Solved both quickly, code could be a bit cleaner. Weak communication skills. Less introduction (i.e, weak performance) in CV round. Reasonable technical skills/communication, could not take hint on feedback (tried to give feedback to answers/hints, felt like I was trying to lead my own way and was unable to take the feedback from the interviewers). Communication was the weak part (which eventually caused my failure). 135 | 136 | Did not seem to be as interested on why Bloomberg - the interviewer thought that more research was needed. Engineers thought the interview did not go as well as the phone interview, could not gain as much information from the candidate. Recommended more practice. 137 |
138 | 139 | This is interesting. Notice that I referenced above that I made an error in my time complexity; this was not referenced in the feedback (which said that my technical skills were reasonable). The issues pointed out were 140 | 141 | * at my communication skills - unfortunately, mirrors my [Facebook failure](../Facebook/Software%20Engineer,%20University%20Grad.md). 142 | * at my weak answers to questions such as "Why Bloomberg". This was a bit more surprising, and I should note in particular the rather bipolar feedback on this in the phone and technical interview. The recruiter suggested that it may have been because the questions were repetitive, but noted that they are still important. 143 | 144 | A TLDR; of this would be to note that despite the interview being technical, they care about the non-technical aspects, and from the feedback that I got, was what let me down at that interview, and that I somehow did OK in that in the phone interview. 145 | 146 | P.S: I was told at the call that the cool-down period is 6 months (not a year as some other companies do). I was also sent a follow-up email, which included the below links: 147 | 148 |
149 | 150 | As mentioned, please also find some useful resources below. This should help with tips on how to prepare for an interview with us in the future. 151 | 152 | [How to Write a Technical Resume](https://youtu.be/KhbaY2UUtWU)
153 | [How to Prepare for a Technical Interview](https://youtu.be/x7BtTnZwkgE)
154 | [Mock Technical Interview Workshop](https://www.youtube.com/watch?v=lhKwiMnkFNI) 155 | 156 | Tell me more about Bloomberg... 157 | 158 | * [We are Bloomberg](https://www.bloomberg.com/company/we-are-bloomberg/) 159 | * [Engineering at Bloomberg](https://www.bloomberg.com/careers/technology/engineering/) 160 | * [Tips for a successful interview with us](https://www.bloomberg.com/careers/technology/engineering/software-engineering-student-recent-graduate/) 161 | * [What we do for the world around us](https://www.youtube.com/watch?v=bVcdS808p80) 162 | * [See what our Engineering teams are up to](https://github.com/bloomberg) 163 | 164 | 165 |
166 | 167 | Overall: despite the annoyance of having to get this via a phone call (and having to reschedule the call twice due to no one showing up the first two times), the feedback was very useful and I do appreciate Bloomberg for providing them (without having to take the GDPR route as with some other companies). 168 | 169 | ### Takeaway 170 | 171 | * Even though my failure ultimately was not related to raw technical skills, I am still embarrassed over messing up the time complexity. Wonder whether that played a part? 172 | * Also: they care about the stock questions, and somehow I managed to perform quite differently to the same question in the two rounds. 173 | * I also wonder whether this could be a case of "the nerves getting the better of me", given that it was my first time at an on-site at Bloomberg. -------------------------------------------------------------------------------- /Application experiences/2021-22/Checkout.com/Graduate Data Analytics Engineer.md: -------------------------------------------------------------------------------- 1 | ## Graduate Data Analytics Engineer 2 | 3 | ### Parameters 4 | 5 | * Role: Quantitative Trader - 2022 Programme 6 | * Location: London, United Kingdom 7 | * Applied: February 24, 2022 8 | * Notification to take entrance exam: March 4, 2022 9 | * Notification of failure: March 18, 2022 10 | 11 | ### HackerRank entrance exam 12 | 13 | After applying, I was sent an email saying that they would be sending HackerRank entrance exams "in the next few days" - and indeed, I was sent one about a week later. 14 | 15 | The test had two portions: 16 | 17 | * 10 questions on SQL trivia. Unfortunately, while I did take a database module, that was a while ago, and I struggled to answer quite a few of them. LeetCode is unlikely to help. 18 | * 3 SQL coding questions. The same comments apply as above, except that they map well to LeetCode Medium questions on SQL. It's been a long while since I last did SQL practice on LeetCode (and SQL isn't something I do a _lot_ of work in either), and did them poorly. It did surprise me that I was unable to get even one of them fully, but again I didn't remember things such as subqueries which the questions seemed to be looking for. 19 | 20 | ### Notification of failure 21 | 22 | Not a surprise given how poorly I did in the exam: 23 | 24 |
25 | 26 | Hi Leader, 27 | 28 | Thank you for your interest in Checkout.com. Despite the quality of your profile and experience, we have made the decision to move forward with other candidates at this time. 29 | 30 | Our decision was based upon a careful comparison of the skills and experience of all applications received so far. 31 | 32 | As per our best profiles retention policy and with your agreement, we would like to keep your details in case of future suitable opportunities with Checkout.com. Should you wish to remove your information, please use the following link [link] 33 | 34 | Thank you once again for your interest and the time you have invested. 35 | 36 | Due to the volume of applications, we cannot provide individual feedback. 37 | 38 | Kind Regards,
39 | The Checkout.com People Acquisition Team 40 | 41 |
42 | 43 | BTW: instead of giving rubbish about "careful comparison of the skills" and whatnot, why not just tell that I failed the entrance exam? How hard is that? And sending the exam marks of a candidate is really not that difficult either. 44 | 45 | ### The GDPR attempt 46 | 47 | I sent a GDPR request to the data protection officer, and the only useful piece of information I got in return was my entrance exam mark (23.3%; 42/180). They even hid the question titles, so I didn't know if I got any marks on the coding questions either! There was also a "CV score sheet" file, which had this in it which I couldn't understand: 48 | 49 |
50 | 51 | A: 3
52 | W: 2
53 | L: 1
54 | A/W/L Total: 6
55 | Decision: Yes
56 | HR: 24 57 | 58 |
59 | 60 | ### Takeaway 61 | 62 | * Unfortunately, I didn't know much SQL trivia and neither did I practice/work SQL beyond the basics, and hence this is a rare case for me, where a poor coding entrance exam mark is the direct cause of a failure. If you can do LeetCode Mediums in SQL comfortably, you should be fine though. Also I don't think there is any real partial marking either - you need to get the format exactly right or you won't get anything (this is not likely in a normal coding problem where the output format is easy to follow). 63 | * The HackerRank exam contained a nasty surprise - I was apparently not allowed to change tabs (which is standard practice to, for instance, lookup syntax) - even though this was not mentioned anywhere in the exam (and scared me as you'd get a message saying that my activity is being tracked and that the recruier can see how many times I went out of the testing window)! OK, I don't mind following the rules, but you need to be explicit and not mislead people... The same issue also applied to Twitter's exams by the way. -------------------------------------------------------------------------------- /Application experiences/2021-22/Epoch Capital/Quant Analyst.md: -------------------------------------------------------------------------------- 1 | ## Quant Analyst 2 | 3 | ### Parameters 4 | 5 | * Role: Quant Analyst 6 | * Location: Sydney, Australia 7 | * Applied: September 19, 2021 8 | * Notified of failure: September 23, 2021 9 | 10 | ### The interview and failure 11 | 12 | The interview was with HR and completely non-technical. She appeared concerned on my Python knowledge (while I consider it to be basic, I do not consider it limiting since I can quickly pick it up and have solved entrance exams in Python before), and I had to stress to her that my "basic" knowledge isn't a problem in practice (note that if I were to pass this one, the next one would be a HackerRank entrance exam, presumably to be completed in Python alone). 13 | 14 | However, (what I think was) the last question tripped me. She asked me on whether I required sponsorship, and I said that I would (since I'm not an Australian/New Zealand citizen, nor have studied there either) and there she said that they would not be able to continue with my application. However, she clearly explained _why_ they could not offer sponsorship and asked me to keep an eye for possible openings in London. 15 | 16 | I got a subsequent failure email a few days later. 17 | 18 | ### Takeaway 19 | 20 | * I'm a bit surprised they didn't realise that I needed sponsorship till the interview - I thought both my location then (from the Middle East) and educational background (from UK) would make them ask for it. Also, I gave them a piece of feedback at the interview - if you have to block candidates requiring sponsorship, _tell it_! Nowhere in the job description did they mention that they cannot offer sponsorship - and while they did say that my suggestion was good and that they would pass it on, clearly they didn't since I can see the same issue in their recent job openings for Sydney and New York as of December 21, 2021. Now those roles may require experience, but telling whether sponsorship can be provided is a good idea either way so that these kinds of issues would not occur. 21 | * That being said, I appreciate that they told me this. It is rare that I have a company that concisely explains why exactly they rejected me - in this case they cannot offer sponsorship to a candidate like me that doesn't have at least two years' experience. They explained that it was an issue with the [Australian 482 visa](https://immi.homeaffairs.gov.au/visas/getting-a-visa/visa-listing/temporary-skill-shortage-482) which requires two years' experience in a relevant field, and I could verify this by a simple search on the internet. This further helped me understand why the majority of roles I see for Australia explicitly block those needing sponsorship - which was something I was confused till then as I didn't know that Australia was US-like in the difficulty of getting a work visa. If only more companies would do this; seriously I would appreciate it (not just for visa-related issues). Interestingly, the interviewer was from the UK. -------------------------------------------------------------------------------- /Application experiences/2021-22/Facebook/Software Engineer, University Grad.md: -------------------------------------------------------------------------------- 1 | ## Software Engineer, University Grad 2 | 3 | ### Parameters 4 | 5 | * Role: Software Engineer, University Grad 6 | * Location: London, United Kingdom 7 | * Applied: August 17, 2021 8 | * Notified to Round 1 interview: September 29, 2021 9 | * Round 1 interview: October 11, 2021 10 | * Notification of failure: October 12, 2021 11 | 12 | ### Prelude 13 | 14 | Historically, I've never been able to get a reply from Facebook despite this being my fourth successive year of attempts. The route though which I managed to get the attention was non-standard. 15 | 16 | I did the HackerRank entrance examination for the “Facebook EMEA Virtual Coding Challenge 2021” event, butchering that LeetCode medium (technically 2-D DP, though there was a O(1) loophole) in about 12 minutes (so about a quarter of the allocated 50 minutes). Hence I was confused when I ended up being rejected from the event (because if not HackerRank, what else?). Some time later, (recruiter) (a recruiter at Facebook) sent this email: 17 | 18 |
19 | From: (recruiter)
20 | Sent: 22 September 2021 18:19
21 | Cc: (recruiter)
22 | Subject: Facebook - Thank you! 23 | 24 | Hi there! 25 | 26 | Thanks so much for signing up to our Crush Your Coding Interview Workshop. We really hope you found it useful and engaging. 27 | 28 | I am very sorry for the issues with the sign-up link, if you weren’t able to attend we do have two other crush your coding interview workshops available for you to attend:
29 | • 12th October https://crushyourcodinginterviewworkshop12oct.splashthat.com/
30 | • 28th of October https://crushyourcodinginterviewemea-oct28th2021.splashthat.com/ 31 | 32 | If you did manage to attend, at Facebook we are constantly looking to improve, so we would really appreciate your feedback on the event - feedback is a gift! With this in mind, please could you take 2 minutes to fill out this survey: 33 | https://forms.gle/HodfgCsGfbdBnt4U7 34 | 35 | We also have opened up our Software Engineering Intern & Graduate opportunities. If you would like to find out more about the roles we have available at the moment please go to facebook.com/careers. 36 | 37 | Much appreciated, 38 | 39 | (recruiter) 40 |
41 | 42 | So I sent this, partially out of confusion: 43 | 44 |
45 | Dear (recruiter), 46 | 47 | I don’t recall signing up for this particular one (though I might have forgotten); rather I applied for the “Facebook EMEA Virtual Coding Challenge 2021” event, but failed despite getting a full mark in the HackerRank exam in about 10 minutes: 48 | ![img.png](../../../media/facebook1.png) 49 | Is this connected with the issue you mention in any way? I ask because I found the rejection puzzling given that the criteria mentioned was only the HackerRank score, which I believe I did reasonably well in by completing in approximately 22% of the time limit. Thanks in advance. 50 | 51 | Regards,
52 | Leader 53 |
54 | 55 | She came back: 56 | 57 |
58 | From: (recruiter)
59 | Sent: 23 September 2021 10:50
60 | To: Leader Board
61 | Subject: Re: Facebook - Thank you! 62 | 63 | Thank you Leader and apologies for the confusion, you have not been taken forward for the coding challenge but you are welcome to sign-up for these events. 64 | 65 | Kind regards, 66 | 67 | (recruiter) 68 |
69 | 70 | That didn't answer my question. So I resent my question: 71 | 72 |
73 | From: Leader Board
74 | Date: Thursday, 23 September 2021 at 08:52
75 | To: (recruiter)
76 | Subject: RE: Facebook - Thank you! 77 | 78 | Dear (recruiter), 79 | 80 | Is there a reason why I’ve not been selected despite completing the coding challenge, with a full score, in 22% of the time? Thanks in advance. 81 | 82 | Regards,
83 | Leader 84 |
85 | 86 | She replied: 87 | 88 |
89 | Hi Leader, 90 | 91 | Thank you for your email. 92 | 93 | I am afraid we do not give feedback on at this stage; we received a very high volume of applicants for a limited number of places for our event, and therefore we do have to take some tough decisions in our process. However, this does not affect your chances at interviews for a position here at facebook and we would very much encourage you to apply. 94 | 95 | Kind regards, 96 | 97 | Regards,
98 | (recruiter) 99 |
100 | 101 | So she didn't want to answer the question - this is a major source of frustration I have with companies not willing to even tell me why I've failed from something. At least she invited me to apply to Facebook - which I already did more than a month back... 102 | 103 | But then she came back again a day later and formally started the process, asking me to answer questions such as my expected month and year of graduation and similar. I've never gotten this far before! After that, I was invited for Round 1 interview - this would end up being my first ever interview of this nature. 104 | 105 | Note: I didn't get an automated confirmation email after applying, noting since I've seen queries about it. 106 | 107 | ### Round 1 interview 108 | 109 | This was with (interviewer) and on a Zoom-based platform, using a Coderpad link which didn't allow for any form of compilation. Unfortunately, I did sign a NDA and hence full description of the questions cannot be provided. 110 | 111 | * The first question was a LeetCode Medium that was an array-based DFS problem. I got this one fully. 112 | * The second question was linked to (but not exactly) LRU Cache - I solved this one by chaining hashmaps and treemaps. 113 | 114 | I did find the questions hard to understand though. For instance, the first question was framed in a way that made it hard for me to understand what you wanted _me_ to do - the input/output was undefined for me for instance which made it weird personally. Is this something that Facebook expects? I don't know. Plus, I felt that she was struggling to understand my approach for Q2 - I was trying to explain it to her but she seemed fixated on something else. In the end, she just asked me to code it... 115 | 116 | ### Notification of failure 117 | 118 | Was by email a day later, explicitly mentioned that feedback cannot be provided. For those interested, here is the failure email: 119 | 120 |
121 | Hi Leader, 122 | 123 | Thank you for taking the time to interview for the Software Engineering position. After careful consideration, we have decided to not move forward with your candidacy at this time. 124 | 125 | We value the time you have taken to find out more about careers within Facebook. You will be contacted if we find that your qualifications match any additional roles that you've applied to. Until then, we’d encourage you to continue checking back on our careers page for future opportunities. I am afraid we are unable to give any further feedback. 126 | 127 | All the best,
128 | (recruiter)
129 | Facebook Recruiting Team 130 |
131 | 132 | What a joke. Messages like these do not help me at all. Yet you ask me to provide feedback... 133 | 134 | ### Getting the feedback: GDPR 135 | 136 | _Written on January 28th, 2022_ 137 | 138 | Thanks to a [couple of posts](https://www.reddit.com/r/cscareerquestionsEU/comments/s4gbgk/use_gdpr_to_read_my_scorecards/) on Reddit, I realised that I could potentially circumvent their "policy" of not giving feedback on failures and invoke the GDPR to get my feedback. So I did that (to mydataprivacyrights@fb.com), utilising the template provided in the linked Reddit post to Facebook: 139 | 140 |
141 | 142 | Hi, 143 | 144 | I would like access to all of my interview feedback data for the SWE New Grad phone interview for London, UK. I interviewed on October 11, 2021. 145 | 146 | This is a formal GDPR request to access this data. 147 | 148 | Regards,
149 | Leader Board 150 |
151 | 152 | And they came back to me: 153 | 154 |
155 | 156 | Hi Leader, 157 | 158 | Thanks for contacting us. 159 | 160 | Based on the information you provided, it looks like you're trying to exercise your rights under the EU's General Data Protection Regulation (GDPR), with regard to recruiting and HR related information. 161 | 162 | We're looking into your request and will respond shortly. 163 | 164 | Thanks, 165 | 166 | People Data Privacy Team 167 | 168 |
169 | 170 | Their definition of "will respond shortly" is about two weeks - but this is what I received 13 days later: 171 | 172 |
173 | 174 | Hi Leader 175 | 176 | We refer to your personal data access request from 15 January, 2022 for personal data access for interview feedback. We have attached our response. 177 | 178 | Please note that for security reasons, the attached document is password protected. We suggest that in order to ensure secure transmission, we will provide the password to you separately. Please respond indicating a different email address or physical address for this purpose. However, if this poses an issue for you, please confirm that you are comfortable receiving this password at the same email address. 179 | 180 | Thank you,
181 | People Data Privacy Team 182 |
183 | 184 | Attached was a PDF that required a password (and supposedly encrypted and hence not crackable by online PDF password cracker tools), and I had to either give them another email/location for that or confirm that it was fine to send the password to the same email! That's odd to me. But then I did that, and the same day got the "decryption key". 185 | 186 | The PDF itself consisted of five pages. Four of them were legalese about Facebook and the GDPR - the feedback itself is in the last page: 187 | 188 | ![img.png](../../../media/facebook2.png) 189 | 190 |
191 | 192 | **Feedback for Leader Board** 193 | 194 | **Software Engineer (University Grad), (London, United Kingdom), Meta, 2021** 195 | 196 | Feedback indicated that the candidate showed reasonable problem solving, sloppy 197 | coding, ineffective communication, unproductive verification, and failure to address 198 | feedback. It was noted that the candidate had conceptually solved both problems quickly, 199 | but using sub-optimal approaches, and was able to assess the complexities accurately. 200 | Additionally, it was noted that the candidate should be more diligent when verifying their 201 | solutions, especially if hints are being given about a problematic place or a specific test 202 | case. Feedback also indicated that the candidate should look to improve their naming and 203 | reducing global or object state. It was noted that the candidate should use return values, 204 | parameters, and helper functions where appropriate. Also, it was noted that the candidate 205 | was praised for asking questions, ensuring that they fully understood the problems. 206 | 207 | Feedback indicated that the candidate coded the first (easy) problem in a broken way due 208 | to missing a recursive call (or a loop) in one of the two branches, and sloppily due to using 209 | outside state for temporaries and the return value; coded the second problem with 210 | redundant state; and both with non-descriptive variable names. Additionally, it was noted 211 | that the candidate failed to find the implementation error in the easy problem even after it 212 | was pointed out where to look and after a test case tailored for it was provided. It was 213 | noted that the candidate failed to take interviewers hints or advice on board but instead 214 | kept insisting that their way would work. Furthermore, it was noted that the candidate used 215 | wrong technical terms to communicate the intended solution and failed to explain it. It was 216 | also noted that the candidate correctly assessed both space and time complexities. When 217 | compared to other candidates, the decision was made to not move forward with the 218 | candidate. 219 | 220 |
221 | 222 | So, this is interesting. Marking the rejection feedback itself, it's a good piece of feedback in general (one of the _best_ I've gotten this year) - clearly gives an indication of (what they thought of was) my weaknesses and how I performed in the two questions, albeit briefly. Weaknesses included no statistical data, no explanation on what in particular caused me to fail overall (you give a bunch of faults, but no clarity of which, if any, sealed my fate), and could be more in-depth by question (see my reflection on the feedback). Note that I'm not commenting on the correctness of their feedback at this stage. This should be provided by default to every candidate - it really can't be that hard, can it? I really shouldn't have to take the GDPR route to get this - kind of shameful from Facebook. 223 | 224 | Now, reflecting on the feedback they provided and comparing to what I _thought_ was my performance on the interview: 225 | 226 | * I didn't know that they cared on cleanliness ("sloppy coding"); don't think I particularly focused on that during the interview. I was not as surprised on the communication aspect given my earlier thoughts in this write-up. 227 | * "candidate had conceptually solved both problems quickly, but using sub-optimal approaches" - eh? I can understand why Q2 may be thought of as sub-optimal (see the _Takeaway_ section), but my answer for Q1 was optimal to the best of my knowledge (O(_n_) time) - if not, that's a serious and uncaught bug that I need to fix! 228 | * "it was noted that the candidate should be more diligent when verifying their solutions, especially if hints are being given about a problematic place or a specific test case" - a reason why you should have given this earlier. I _think_ it's for Q2, but I can't recall the exact instance which may have caused this feedback, and am not completely sure on what this means either. 229 | * "Feedback also indicated that the candidate should look to improve their naming and reducing global or object state" - looks like from the cleanliness section. This is useful feedback. Same for the ones in the second paragraph that deal with this section. 230 | * "Additionally, it was noted that the candidate failed to find the implementation error in the easy problem" - I just can't recall where that could have happened (note that isn't a statement of denial). 231 | * "It was noted that the candidate failed to take interviewers hints or advice on board but instead kept insisting that their way would work." - that happened in Q2. I found it hard to communicate with this aspect on the interviewer. My intention was not to insist on a particular approach, but I was not getting what the interviewer was hinting at unfortunately. 232 | * "the candidate used wrong technical terms to communicate the intended solution and failed to explain it." - what? I don't recall this happening anywhere - again if true, I need to fix that urgently since it's a serious problem. I think it would help if they gave the exact location where that happened. 233 | 234 | But overall, it's nice that I got this - helps me in understanding _some_ of my mistakes in the interview and I hope this helps others as well. 235 | 236 | ### Takeaway 237 | 238 | * The non-standard way I managed to not get ghosted in my fourth attempt should be noted. 239 | * With a failure that didn't tell me why I failed (update: see the GDPR section; no longer true), I had no idea on what I missed. I looked at other users' interviewing experiences and some did say that they got through with only solving one question out of two. That made me wonder - what did I miss? Communication challenges could be a part, but I started digging into that second question later and realised I may not have given a perfectly optimal solution. My solution was O(log _n_) time and O(_n_) space - however I think there was a O(1) time option available. 240 | * The bug stems from a conceptional blunder on linked lists. I thought that accessing a specific element in a linked list is O(_n_). This is correct indeed - but what I missed is that given a hashmap, you _can_ access a specific element in constant-time (which was a solution in the original LRU Cache problem)! The root cause of my error was my forgetting that I could have used linked lists from first principles instead of relying on Java's linked list library. 241 | * GDPR is a good thing - and Facebook _can_ provide (useful) feedback! Also, you can indeed get feedback on a successful application, which someone sent over to me. Unfortunately, I am not permitted to disclose its contents. This is not my choice - the person was apparently concerned about "doxing". -------------------------------------------------------------------------------- /Application experiences/2021-22/HSBC/Markets & Securities Services - Quantitative Finance - Full-Time Associate Programme.md: -------------------------------------------------------------------------------- 1 | ## Markets & Securities Services - Quantitative Finance - Full-Time Associate Programme 2 | 3 | ### Parameters 4 | 5 | * Role: Markets & Securities Services - Quantitative Finance - Full-Time Associate Programme 6 | * Location: London, United Kingdom 7 | * Applied: September 20, 2021 8 | * Notified of failure: October 2, 2021 9 | 10 | ### Immersive online assessment 11 | 12 | This is automatically sent out immediately after application (assuming that the minimum criteria are met), and is irrespective of the role applied for. The test itself is no different from similar tests from other companies, comprising situational judgement, reading comprehension and mathematics tests, and isn't timed at all. The mathematics and verbal questions aren't hard by themselves (though can be boring) - I did OK as a non-native English speaker. 13 | 14 | I didn't fail this one. The "feedback report" I got after this section (as usual, almost useless) will be attached at the end of this write-up. 15 | 16 | ### Job simulation assessment 17 | 18 | A couple of days after doing the first entrance exam, I was asked to do a "job simulation" examination through Hirevue. This exam is generally meant to be specific to the role applied for, and hence I wasn't sure what to prepare for. Note that they do offer a practice exam, but that is generic and didn't help for the actual examination. 19 | 20 |
21 | Well done, you have been selected to take part in the next stage of the assessment process! This is a Job Simulation assessment and will give you greater insight into the business area you have applied to. The assessment will cover verbal, written skills and behavioural alignment to HSBC using video recording, written response and rank-order questions. The assessment takes approximately 35 minutes to complete, if you think you need additional time to support you with any adjustments please reply to this email. 22 |
23 | 24 | Now, the actual exam was from the Markets and Securities Services division. Despite the title of the role I applied for, this surprised me because I was of the understanding that I applied for a quantitative finance role, and the questions appeared to be the same as a non-quant markets role. That is, it didn't test anything quantitative (except basic data analysis), mathematical and didn't have a coding section either. The questions I had included: 25 | 26 | * a video question that gave a schedule and asked me how I would arrange it given a set of constraints (the schedule was set up in such a way that it would not be possible to complete _every_ one) 27 | * some video questions that appeared to be behavioral (that is, classic SJT/situational judgement test-styled) 28 | * some SJT-based questions revolving around data and traditional SJT questions 29 | * some personality questions 30 | * an email response question revolving around analysis of data 31 | 32 | The test in itself wasn't particularly insightful or useful, and I didn't like that there were video and SJT questions in the test. 33 | 34 | ### Notification of failure 35 | 36 | 3 days after the test, I got this: 37 | 38 |
39 | 40 | Dear Leader, 41 | 42 | We would like to thank you for completing the Job Simulation as part of your HSBC application to the position of Markets & Securities Services - Quantitative Finance - Full-Time Associate Programme (UK - London). 43 | 44 | In order to gain a full understanding of the meaning of your test results, your performance has been compared to that of a large group of individuals who have previously completed these tests when applying for a Graduate / Internship role at HSBC Global Businesses. 45 | 46 | It is with regret that we must advise you that unfortunately you have not been successful in meeting our requirements. 47 | 48 | Regrettably it is not possible to provide individual feedback due to the high number of applications we receive. We trust, however, that the Feedback Report following the completion of the Online Immersive Assessment, giving you some insight into how you can work on your highest and lowest scoring attributes, has been useful. 49 | 50 | If you could spare a few moments, we would be really keen to hear your feedback on the Job Simulation, as well as your HSBC journey to date. We would therefore ask that, if you have time, you complete our survey by clicking the link below: 51 | 52 | Job Simulation Survey [link] 53 | 54 | Can't access the media? Copy this link into your browser: [link] 55 | 56 | We would like to take this opportunity to thank you for your interest in HSBC and wish you every success for the future. 57 | 58 | Kind regards
59 | HSBC Graduate Recruitment Team 60 |
61 | 62 | As expected, the email had nothing useful in it, and no, the "Feedback Report" after the online assessment wasn't of any use either. Yet you want us to provide feedback... 63 | 64 | ### Takeaway 65 | 66 | * It should be noted that this role (being an "Associate" and not an "Analyst") has relatively higher requirements compared to most other HSBC graduate roles. Specifically, a "quantitative" masters degree is mandatory (which I would have). Hence I was a bit surprised with the Hirevue interview, but then arguably that is not an excuse. The role is definitely interesting in itself and hence this failure did sting. 67 | * This is my third consecutive year I've applied to HSBC (for three different roles), and completes my hat-trick of failures there. All at the same pesky job simulation stage... 68 | * It appears that I am so bad that I didn't even meet a "minimum" benchmark. I inferred this from looking at [reports on The Student Room](https://www.thestudentroom.co.uk/showthread.php?t=7100404), where the majority reported getting an email that they passed a "minimum benchmark" which in turn only means that they are in consideration for selection to the next stage. 69 | 70 | ### Appendix: Feedback report after the immersive assessment 71 | 72 | It was as useless as expected - clearly there is nothing unique about the feedback report other than the titles that come up. Plus the "opportunities" section doesn't do anything useful either. What I want to know is _how_ my answers made you think the way you did - that way I can at least understand what I could be missing. I hate these tests... 73 | 74 |
75 | 76 | **Your Key Strengths** 77 | 78 | This section gives you feedback on the areas that we identified as your key strengths, in relation to roles at HSBC. 79 | Your results suggest that one of your highest strengths is **Critical Analyst**. 80 | 81 | You are likely to be the type of person who enjoys analysing problems and complex information. You take a structured and logical 82 | approach to interpreting this information, using your analysis to identify patterns and reach robust conclusions. 83 | 84 | Opportunities to develop this strength further… 85 | 86 | * Reflect on information from different perspectives to understand how different people may interpret it. Use these different 87 | perspectives to find a justified conclusion which minimises contradiction. 88 | * Stretch your ability to analyse complex information by checking over the analysis of others who may be more experienced. 89 | Look to see if the conclusions you have made are accurate based on the data, and ask questions to support your 90 | understanding. 91 | * To deepen your understanding of the information you have, reflect on its source. Think about where it has come from, and 92 | what possible biases might exist which could impact on your interpretation. Amend your conclusions accordingly based on 93 | this understanding. 94 | 95 | Take care... 96 | 97 | While it is great that you are able to analyse and interpret problems, make sure you do not become too dependent on having 98 | every piece of information possible. Some decisions might need to be made without having all the information available. 99 | 100 | Your results suggest that one of your highest strengths is **Numerical Reasoning**. 101 | 102 | You are likely to be the type of person who thrives when using numerical information and data, no matter how complex it is. You are 103 | likely to have a good understanding of mathematical concepts and be able to carry out calculations to solve problems accurately. 104 | 105 | Opportunities to develop this strength further… 106 | 107 | * Numerical reasoning does not always have to be used to solve large, complex problems. Consider going online to practise 108 | numerical problems or puzzles, or take online tutorials to test yourself on different material. 109 | * Your interest in and confidence with numerical data may mean you immediately begin analysing numerical information when 110 | presented with it. Before you look to analyse it, reflect on what information will be the most useful, and which, if any, 111 | information is not necessary for what you are looking to achieve. 112 | * Once you have completed a calculation or a piece of analysis, reflect on it and check your solution. Work from your result 113 | back to your initial calculation to carefully check for any possible errors that could have impacted on subsequent calculations, 114 | and to identify any further analysis that will reveal greater insight. 115 | 116 | Take care... 117 | 118 | * There are many other types of information that can supplement numerical data. When you are making calculations, think 119 | about what the purpose is, and see if there is any other data that will be useful to consider. 120 | 121 | Your results suggest that one of your highest strengths is **We Take Responsibility**. 122 | 123 | You are likely to be the type of person who is guided by your values and acts in accordance with doing the right thing. You may feel 124 | energised when you make decisions that you believe are right. You are unlikely to be afraid to speak up when you think there is a 125 | better way of doing something, or if you think there is a problem. 126 | 127 | Opportunities to develop this strength further… 128 | 129 | * Act as an ethical role model for others. Encourage others to stand up for what they think is right. 130 | * Expand your understanding of what others consider to be right and wrong and how they act in accordance with this. When 131 | working with others, they may have different opinions on what is right, so use this understanding to decide what the best 132 | course of action is. 133 | * While you are acting in accordance with what you believe is right, think about how this behaviour impacts on others around 134 | you. Use this wider understanding, together with your values, to understand when it is more effective to stand up for what you 135 | believe in. 136 | 137 | Take care... 138 | 139 | While it is great that you always act in accordance with what you believe is right, make sure that you understand why a 140 | decision has been made. 141 | 142 | **Your Potential Areas of Development** 143 | 144 | This section gives you feedback on the areas that we identified as your areas for development, of those that were included in the 145 | assessment. These are likely to be areas in which you perform less well, or ones that you may not enjoy doing as much as your Key 146 | Strengths. Please note that these should not be interpreted as weaknesses – they are simply the lowest scoring areas that were 147 | assessed. 148 | 149 | Your results suggest that one of your lowest strengths is **Learning Agility**. 150 | 151 | You may prefer to rely on your existing knowledge and skills when faced with new situations rather than continuously seeking out 152 | new information. You are likely to require more time to reflect on what you have learned before you are ready to apply it in practice. 153 | 154 | Opportunities to develop this area further… 155 | 156 | * Think about changing the way information is presented. There may be steps you could take that make it easier for you to 157 | absorb information. Make use of different layouts, colour coding and images instead of text to make it memorable and keep 158 | it interesting. 159 | * Look for opportunities to start a conversation about something new you have learned and find out what other people know or 160 | think about it. 161 | * Get into the habit of reviewing what went well and identifying things that you could do differently after every project or learning 162 | experience you have. There is plenty to be learned from reviewing your successes as well as your challenges 163 | 164 |
-------------------------------------------------------------------------------- /Application experiences/2021-22/Improbable/Graduate Applied Scientist, Defence - 2022 Start.md: -------------------------------------------------------------------------------- 1 | ## Graduate Applied Scientist, Defence - 2022 Start 2 | 3 | ### Parameters 4 | 5 | * Role: Graduate Applied Scientist, Defence - 2022 Start 6 | * Location: London, United Kingdom 7 | * Applied: October 29, 2021 8 | * Notification of failure: December 13, 2021 9 | 10 | ### HackerRank entrance exam 11 | 12 | Seems like this is given to everyone, and the title made me think that the contents are independent of the role being applied for. They explicitly mentioned that a full mark is not required for progression, which makes sense since this is a relatively harder exam for 75 minutes (2 questions). I do appreciate that they mentioned that, but telling the exact pass mark would have been useful. 13 | 14 | * Q1 was a slightly ambiguous LeetCode Medium that involved my chaining a pair of 1-D DP arrays. The ambiguity made me run into a few false starts and resulted in this taking longer than I'd like. That being said this is not an easy question given that they claim it to be. 15 | * Q2 was a LeetCode Hard. A tricky subsequence problem, I could reduce it to O(_n_2) by sorting + 2 pointers and could have reduced it further to the expected O(_n_ log _n_) if I improved my two-pointer solution but ran out of time in doing so. I still managed to get 14/15 test cases right despite that. Note that while the "bruteforce" solution is O(*n* 2_n_), trying that would have been useless here as not many test cases were small enough for that. 16 | 17 | ### The interview that never happened 18 | 19 | As expected, (the recruiter) reached out to me and asked me to schedule the first-round interview. Note the contents carefully: 20 | 21 |
22 | Dear Leader 23 | 24 | We have received your application for the opportunity of 'Graduate Applied Scientist, Defence - 2022 Start' at Improbable and would love to arrange a conversation to discuss your profile and also give you some more information on what we’re doing here and more detail about the role. 25 | 26 | The easiest way to do this is to find a time that works for you directly on our Talent Team's calendar using the automatic scheduler. However, if you struggle to find a slot that works for you in the coming weeks do let me know over email which time blocks work for you as I can juggle our calendar. 27 | 28 | I look forward to hearing from you. 29 | 30 | Warm regards,
31 | (recruiter) 32 |
33 | 34 | Notice that this isn't a technical interview. Plus I was sent a couple of brochures that detailed the roles Improbable had in general - this confused me since I wasn't sure at that point whether I was being considered for _any_ role at Improbable _or_ the role I had applied for. 35 | 36 | Still, I scheduled the interview for November 29th. I didn't want to schedule it that late as I was concerned it could be too late, but there were no earlier dates. 37 | 38 | At the day of the interview (201 minutes before it), I got this: 39 | 40 |
41 | Hi Leader, 42 | 43 | Unfortunately an Internal Meeting has been put in my diary for the same time as our call, please can you provide me with your availability for the rest of the week so we can reschedule. 44 | 45 | Apologies for any inconvenience caused 46 | 47 | Many thanks,
48 | (recruiter) 49 |
50 | 51 | I sent my availability for a reschedule, but a few days later, got this instead: 52 | 53 |
54 | Hi Leader, 55 | 56 | I wanted to update you, the Applied Scientist role was put on hold this week, I am catching up with the Hiring Manager next week and will get an update then. I will get back to you ASAP on next steps 57 | 58 | Thanks
59 | (recruiter) 60 |
61 | 62 | ### Notification of failure 63 | 64 | At this point I could figure out where this was going to end. And indeed: 65 | 66 |
67 | Dear Leader 68 | 69 | Thank you for your application to the Graduate Applied Scientist, Defence - 2022 Start position at Improbable. I'm sorry to say that we have now filled this position and are no longer accepting applications. 70 | 71 | However, I wanted to let you know that we reviewed your application in detail and will get back to you in the future if anything suitable comes up. 72 | 73 | Kind regards,
74 | (recruiter) 75 |
76 | 77 | Fail. Didn't bother asking for feedback given how early into the process I failed. At least it was out of my control. 78 | 79 | ### Takeaway 80 | 81 | Not much I could do here, felt defeated at this one even though it was out of my control. -------------------------------------------------------------------------------- /Application experiences/2021-22/Maven Securities/Quant Researcher.md: -------------------------------------------------------------------------------- 1 | ## Quant Researcher 2 | 3 | ### Parameters 4 | 5 | * Role: Quant Researcher 6 | * Location: London, United Kingdom 7 | * Date of application: January 10, 2022 8 | * Notification of failure: February 15, 2022 9 | 10 | ### Prelude 11 | 12 | For the 2020-21 season, I applied to Maven for a graduate SWE role, failing at a standard stage - the one-way video interview part (after passing the Codility entrance exam, which was a LeetCode Medium on floodfill to be done in 150 minutes). I was about to try again (for a different graduate role) next year and sent them a standard question regarding that graduate role. The response was that I cannot apply for that role since I've been permanently banned from applying for graduate roles. This surprised me, and I asked them to show evidence of this, to which they pointed me to the [FAQ](https://www.mavensecurities.com/faqs/can-i-reapply-if-i-have-previously-been-unsuccessful/), and indeed: 13 | 14 |
15 | 16 | **Can I reapply if I have previously been unsuccessful?** 17 | 18 | Unfortunately, if you have previously applied to our graduate programmes unsuccessfully, your application will not be considered. 19 | 20 |
21 | 22 | This was a rude surprise. I'm aware that after a failure, there is usually a standard _cool-down_ period (usually up to a year), but never before have I come across a company that would give you a permanent ban (for graduate roles). Again, they _did_ disclose this, but I must have glossed over the first time because I didn't know about the ban without sending that email. 23 | 24 | Now, a few months later, I got a standard careers email at my university for the quant researcher role. Per standard practice, I looked at the description, and it indeed did interest me. But then since I was under a permanent application ban (though for graduate roles), did this mean that I was banned from applying for the quant researcher role? Perhaps surprisingly, the answer was a no. 25 | 26 | ### HackerRank entrance exam (Stage 1) 27 | 28 | After applying, I was told to sit the first HackerRank entrance exam. The test had two sections: 29 | 30 | * Mathematics and ML MCQ (7 questions, 20 minutes in total): focusing on probability, statistics and some basic ML. Wasn't bad, though the options were tricky and had good red herrings. 31 | * Coding (20 minutes + 20 minutes + 35 minutes): one LeetCode easy and two LeetCode mediums; the first one was greedy, the second one was a stack problem, and the third one was a tricky 2D DP. I got the first two fully; gave a non-answer for the third one as I ran out of time fixing the bug in the 2D memoisation table (figured out a few minutes after the test ended). 32 | 33 | It should be noted that unlike nearly every other test I've done, the time limits were _sectional_. This meant that going back and forth between the four sections (the three coding problems + the mathematics MCQ) was not possible, and once a section was exited, it was not possible to go back for any reason. This made the test somewhat more time-pressured for me; I was unable to "bank" time from the MCQ and the non-DP coding problems to use in solving the DP problem - had that been possible, it's likely I would have gotten the DP problem as well. 34 | 35 | ### HackerRank entrance exam (Stage 2) 36 | 37 | After this, I was asked to complete another HackerRank exam, this time a data science/ML problem for 4 hours (which I've never done before). A screenshot of the HackerRank interface is shown below, with the question and code pixelated per repository policies: 38 | 39 | ![img.png](../../../media/maven1.png) 40 | 41 | I didn't really know how to do these kinds of problems, but given the time limit, I decided to give it a try. In the end, I decided to use a Bayesian inference approach, basically using the available prior to deduce the best posterior (i.e, that would best solve the maximisation problem). Given that the question references using a _pickle_ (which mine didn't), I suspect that was not the right way to do it. 42 | 43 | ### Notification of failure 44 | 45 | Was by email (with a title "- Sorry, it's not quite a match."), and precluded getting feedback: 46 | 47 |
48 | 49 | Hi Leader, 50 | 51 | Thanks for applying to Maven. 52 | 53 | We've looked through your application, and unfortunately, we've decided not to progress. We're unable to give further feedback at this stage. 54 | 55 | 56 | Thanks for the time you have dedicated so far and best of luck for the future. 57 | 58 | 59 | Best wishes,
60 | _The recruitment team_ 61 |
62 |
63 | 64 | ### The GDPR attempt 65 | 66 | I sent a standard GDPR request to [dataprivacy@mavensecurities.com](mailto:dataprivacy@mavensecurities.com): 67 | 68 |
69 | 70 | Hello, 71 | 72 | I would like access to all of the recruitment data you have (specifically the ones used to make a decision on my application) with me with respect to the Quant Researcher role. This includes the scores I got on the two HackerRank exams, and any feedback you have as a result. 73 | 74 | This is a formal GDPR request to access this data. 75 | 76 | Regards,
77 | Leader Board 78 |
79 | 80 | I got this a couple of days from [legal counsel]: 81 | 82 |
83 | 84 | Dear Leader, 85 | 86 | I hope you are well. 87 | 88 | Thank you for your email of 15 February 2022. 89 | 90 | By way of introduction, I work in Maven's legal team. 91 | 92 | I am reaching out to confirm receipt of your Data Subject Access Request ('DSAR') under Article 15 of the General Data Protection Regulation ('GDPR'). 93 | 94 | We will respond to your request as soon as possible and, in any case, within one month of receiving your request. 95 | 96 | In limited circumstances (for example, if your request is very complex), we may take up to three months to respond. If that's the case, we will let you know shortly. 97 | 98 | Kind Regards
99 | [legal counsel] 100 |
101 | 102 | About a month later, I got the response: 103 | 104 |
105 | 106 | Dear Leader, 107 | 108 | I hope you are well. 109 | 110 | I am writing in response to your data subject access request dated 15 February 2022. 111 | 112 | I am pleased to inform you that this request is now complete. 113 | 114 | Please see attached a PDF containing your personal data as requested. 115 | 116 | I have also attached a letter detailing the searches undertaken by Maven and a copy of Maven's Recruitment Privacy Notice. 117 | 118 | Kind Regards,
119 | [legal counsel] 120 | 121 |
122 | 123 | So what's in that email? Two PDFs: 124 | 125 | * The first one was just legalese about the privacy policy, what information they held, and what they redacted themselves (mainly the ones that weren't my personal data). 126 | * The second one contained the data. Most of them was useless from my perspective (like my CV, and email exchanges). The only useful bits were these: 127 | 128 |
129 | 130 | [redacted], 131 | 132 | Leader Board submitted a take home test for Quant Researcher (SA10) on Tue Jan 18, 6:07pm GMT. You've been asked to grade this test. 133 | 134 | Click here to view the submitted test and fill out your scorecard. 135 | 136 | **Score** 20.0 137 | 138 |
139 | 140 |
141 | 142 | [redacted], 143 | 144 | Leader Board submitted a take home test for Quant Researcher (SA10) on Tue Jan 11, 7:31pm GMT. 145 | 146 | **Score** 127.0 147 | 148 |
149 | 150 | Naturally, I found this quite underwhelming, especially compared to some others I've received. The only thing I could infer was a confirmation that I failed the ML take-home exam. I don't even know what percentage I got in either section (because the maximum mark was not mentioned anywhere)! BTW: the take-home test was _not_ automatically scored (as there weren't any test cases nor was I given any indication of a score), and I am not sure where they got the 20 from. 151 | 152 | ### Takeaway 153 | 154 | * Unfortunately, this is another case where I failed a coding examination, which is not normal; this happened because I was not familiar with ML-style HackerRank exams (the practice test simply gave a feel into the interface itself). 155 | * I don't get the purpose of giving permanent bans for _any_ role - I've seen cases of people failing one year but passing the next. That raises the question: did I earn a permanent ban from applying from this (the quant researcher) role as well? Didn't ask them. 156 | * In my GDPR response, they also included communication on the 2020-21 graduate role I failed. Again, there was too little information to make use of (didn't even provide the entrance exam mark I got in Codility). The reason for why I failed? "Reason: Preferred another candidate". I don't quite think that was the _true_ reason. 157 | * The prospect of being hit with a permanent ban for a role has made me scared, since I would not know if I missed some "fine print" - and even if I didn't, I would have to watch out for unwritten rules (which affected IMC in that I was given an extended 17-month ban which was not mentioned anywhere on their website). -------------------------------------------------------------------------------- /Application experiences/2021-22/Microsoft/UK New Grad.md: -------------------------------------------------------------------------------- 1 | ## UK New Grad 2 | 3 | ### Parameters 4 | * Role: Software Engineer (SWE) 5 | * Date of application: October 2, 2021 6 | * Notification of qualification to Round 1 interview and Codility examination: October 4, 2021 7 | * Round 1 interview: October 25, 2021 8 | * Notification of qualification to Round 2 final set of interviews: November 1, 2021 9 | * Round 2 set of interviews: November 16, 2021 10 | * Notification of failure: November 24, 2021 11 | * Location: United Kingdom 12 | 13 | ### Codility examination 14 | 15 | Note that you only get it if you get to the first-round interview - so this isn't something that everyone gets. 16 | 17 | This was a standard Codility examination - 3 questions, 80 minutes. Two of them were LeetCode easies and one was a LeetCode Medium (greedy). Finished in about half time. 18 | 19 | ### Round 1 interview 20 | 21 | This was held by (interviewer) from Korn Ferry International - note in particular that this isn't Microsoft itself, rather Korn Ferry International interviewing on behalf on Microsoft! This is important as can be seen below. 22 | 23 | For some reason, the interviewer kept their video off citing an issue (mine was off as well). The interview was mainly stock with a somewhat technical nature. For instance, some questions they asked were: 24 | 25 | * (classic) Why Microsoft? 26 | * What teams would you be interested at Microsoft? 27 | * What is your favourite Microsoft product? 28 | * (as a follow-up) How would you explain multithreading to someone that isn't technically inclined? 29 | * They also asked me to explain a project that I did. 30 | 31 | At the end, they gave me a brainteaser. This one to be exact: 32 | 33 | ![Graphical user interface, text, application Description automatically 34 | generated](./../../../media/microsoft1.png) 35 | 36 | ... which I was a bit surprised since I thought Microsoft doesn't ask them anymore. Fortunately, I managed to get the answer right (which is yes: 40 = 30 + 31 + 32 + 33 and brute-force) and the interviewer confirmed as such. The interview ended up taking about 30 minutes. 37 | ### From Round 1 to Round 2 38 | 39 | After that, my recruiter (which was actually from Microsoft) let me know that I got into the final set of virtual interviews, which would be 4x45 minutes and end up taking about 4 hours of my time. I was asked to fill up a "form" with questions asking on my preferred location (London Enfield, "Midlands" which I took to be Reading, Edinburgh and Cambridge) and what factors would be most important in a job for me. Keep in mind the latter. 40 | ### Round 2 interview 41 | 42 | I interviewed for Azure for Operators (this is important because to me, that appeared to influence the questions I got). 43 | 44 | * Round 1 was a OOP-based design question. I think I did very poorly in this one - OOP isn't something I work with regularly and I had no idea Microsoft asked such questions. The OOP question was about designing a calendar. Focused a lot on OOP principles and the skeleton rather than the algorithmic structure - I wasn't even sure what was expected from me. I had to use Codility for that (but there was nothing to run). At least Microsoft's website gave no indication that these kinds of questions would be asked. I asked someone who applied for a Dublin role and they didn't get anything like that. Maybe it's expected for students, I don't know, but it wasn't something I prepared for. 45 |
46 | Model the backend for a calendar system (similar to Google Calendar or 47 | Outlook) using OOP. It should include: 48 | 49 | - Basic appointments. 50 | - Meetings (to which others are invited and can reply). 51 | - Categories for appointments, including private appointments. 52 | - Online and in-person meetings. 53 | - Agendas for meetings. 54 | 55 | Design a class hierarchy and the key methods on those classes. Describe 56 | OOP design patterns you would use. 57 | 58 | You do *not* need to consider the frontend of the system i.e. how the 59 | calendar may be rendered visually and the user interface to interact with 60 | it. 61 | 62 | The calendar backend is part of a system that replaces a traditional pen 63 | and paper calendar. Users can add entries to this calendar - i.e. 64 | appointments that they want to track, at particular dates and times. 65 | In addition to appointments that are purely scheduled and tracked by the 66 | user themselves, digital calendar systems support the concept of inviting 67 | others to meetings and tracking their responses (will attend I will not 68 | attend). These invitations and responses are typically by email but this 69 | detail can be ignored or abbreviated for your answer. 70 | Users can view their calendar for a given date or range of dates. This 71 | is the set of appointments and meetings that they have in that time 72 | period. 73 |
74 | 75 | * Round 2 was a design-based question (appeared to be related to distributed systems). This went better since it contained themes of concurrency and architecture which is something I like, but I was still confused on why I was being asked these kinds of questions and didn't know how well I did in practice. The below was the scenario; I was asked questions such as whether this scale could cause an issue, and what would happen given multiple computers. ![img.png](../../../media/microsoft2.png) 76 | * Round 3 was a standard LeetCode Medium question (coin change) - that was quite straightforward and I think I did well there. There were some related followups (the original problem they asked was greedy-friendly, and hence DP was a follow-up though I wasn't asked to code it), but I only got one full problem. 77 | * Round 4 was a networking-based question that was wrapped up as a brainteaser/problem solving question (so it would not look like networking experience was required). The question read like this (I tried to use the concept of entropy and bits), and there were a lot of followups to this one. 78 | 79 |
80 | Alex and Nicky are friends. However, they are now both forbidden by their families from seeing or communicating with each other, or even leaving their respective houses. 81 | They both like to hand-feed the little birds that come to their windows. One day, Alex decides that many of these birds must visit both of their windows, and ties a small piece of paper with a short message to one of the birds’ legs. Nicky notices it and reads the message, and then successfully sends a short message back. 82 | They discover that not all pieces of paper get to their intended recipient, but many do, though some take a lot longer to be delivered than others. Larger messages have to be broken into sections, even when they write as small as they can on as large a piece of paper as their birds can carry. 83 | They now have an unreliable way of sending short messages to one another. What system could they set up so that they can reliably send each other messages of any length? 84 |
85 | 86 | One important aspect is that they asked many "competency" questions (simply SJT/situational judgement questions) which I found hard to answer (considering that they didn't want to clarify) and I think I did poorly there. To give a couple of examples: 87 | 88 | * a question was asked about whether I worked with UX/user-interface design and my experience with it - I don't do UX design! 89 | * which Microsoft product would I most change - the problem I found was that the wording implied that a Microsoft product was broken, making me really confused. 90 | 91 | ### The failure notification 92 | 93 | I overall didn't enjoy the interview, and felt that I was not the right person for this role or that they were looking for someone else. Hence I was not surprised when the rejection email came (and was more irritated that they didn't provide feedback - when I did ask for one their response was too vague for me to get anything out of). 94 | 95 | ### Takeaway 96 | 97 | To me it seems like they are only interviewing for Azure for Operators from my new grad experience - but then I applied for a generalist SWE role which didn't have any mention of "Azure for Operators" and hence it was clear that my answers to which team I would be interested in (from the first-round interview) _and_ to the question on the factors I would consider when deciding whether to accept a role were both ignored - I was explicit in preferring one that was relatively mathematically heavy (or similarly interesting such as operating systems/OS) and that wasn't Azure for Operators (which indeed had none of what I was looking for from the questions I asked during the finals). I also explicitly told them that I would be fine changing locations entirely if that would help. 98 | 99 | Which I found disappointing because Microsoft is a company that I would have really liked to get into (as a long-term user of its products) and was the first time in my four years of attempts that I managed to get to this far. -------------------------------------------------------------------------------- /Application experiences/2021-22/Mustard Systems/Graduate Trading Operations Analyst.md: -------------------------------------------------------------------------------- 1 | ## Graduate Trading Operations Analyst 2 | 3 | ### Parameters 4 | 5 | * Applied: January 21, 2022 6 | * Interview 1: May 24, 2022 7 | * Notification of failure: August 11, 2022 8 | * Location: Hammersmith, London, United Kingdom 9 | * Role: Data Scientist (was known as Graduate Trading Operations Analyst) 10 | 11 | ### Prelude 1: Choosing the role 12 | 13 | The application process for this company required that I submit a cover letter and CV via email. Looking at the website, they had two roles that I found interesting, but did not know which one to apply for: 14 | 15 | > Note that a screenshot of the two roles is provided as well, as they will take down the link when they are no longer hiring for that role. 16 | 17 | * [Sports Quantitative Analyst - Graduate Level](https://www.mustardsystems.com/sports-quantitative-analyst-graduate.html) ([screenshot](../../../media/mustard3.png)) 18 | * [Graduate Trading Operations Analyst](https://www.mustardsystems.com/graduate-trading-operations-analyst.html) ([screenshot](../../../media/mustard2.png)). The Data Scientist role has exactly the same description. 19 | 20 | So I sent an email asking a few questions so that I can make a decision. The response is published below in the hope that it helps others in the future: 21 | 22 |
23 | 24 | Hi Leader 25 | 26 | I hope you are well. 27 | 28 | Please find the below response, I hope this helps you make your decision. 29 | 30 | > It is mentioned that a postgraduate qualification in statistics is preferred. How strict is this? 31 | 32 | It is quite strict; having said that, at the end of the day candidate's experience matters, not their formal qualifications. If you think you have a strong background in statistics and probability, and you undertook some formal statistical training, feel free to apply. 33 | 34 | > Also how much programming/computing is involved? 35 | 36 | For quant, a lot, programming / computing / data wrangling are 80% of the job. Python / R are fine for quant though. For the trading operations, it would be closer to 50%. 37 | 38 | > I was wondering on whether you could elaborate on what one would do in an average day 39 | 40 | Some of the things you could be involved in
41 | a) Cooperate with quants - perform simple statistical analyses & data wrangling tasks.
42 | b) Cooperate with developers and traders - provide feedback on the trading systems & possibly oversee some - both performance as well as market / strategy interaction wise.
43 | c) Come up with trading signals. 44 | 45 | > how much overlap (if any) exists between the quantitative analyst role and how much is different 46 | > 47 | There is some overlap, the quant role would be more long term and speculative work; the trading operations role would be directly working on the intersection of market and data + some oversight over the deployed signals. The trading operations role also gives opportunity to work with multiple different teams early on. 48 | 49 | Hope this helps. 50 | 51 |
52 | 53 | Indeed, that helped. For me, that meant that the better choice was the trading operations role, as the sports role seemed to require substantially more statistical knowledge than what I had, plus the trading operations role would allow me to be involved with the quant *and* the software development side, which would give me a lot of exposure quickly. And that's what I chose to apply for in the end. 54 | 55 | ### Prelude 2: The timeline 56 | 57 | I got the impression that people were getting sick there all the time. Consider the following timeline (all emails were sent by HR): 58 | 59 | February 1st: 60 | 61 | > Please let me know your availability for a soft talk with our director, Tom Rolfe who will cover more information about our company, what we do and answer any questions you may have. The next step in the interview process will be a face to face interview at our offices with the Head of Trading, Matthew Waters and Owner of the company, Jasper White. 62 | 63 | February 7th: 64 | 65 | > Apologies for the delayed response. I have been sick with Covid. Please let me know what time works well for you this week. Look forward to hearing from you. 66 | 67 | February 23rd: 68 | 69 | > Unfortunately, our hiring team members are currently off sick with Covid so we have been unable to schedule you in for a soft talk. I will get back to you early next week with further availability. 70 | 71 | March 10th (that was the point where they decided to skip the "soft talk" part silently): 72 | 73 | > The interview will last approx. 1 hour and 30 minutes and will be with our Head of Trading - Matthew Waters and a Quant team member may join in too. You may have a second interview with the Owner of the company - Jasper White, at a later date. 74 | 75 | The slots provided (March 16 and 17) were too close to my final exams, and hence I requested them to provide a slot after that. 76 | 77 | March 10th (i.e, same day): 78 | 79 | > We can do 29th - 31st March, 12 pm onwards - hope that works for you? 80 | 81 | I asked a question about what the interview was (as that was only a few days after my final exams and I was not sure on how much (if any) I had to prepare). 82 | 83 | March 15th (this was responded to by another member of the HR team): 84 | 85 | > [HR 1 name] is now on holiday. I am unsure if she responded to your question re the interview. The interview will include soft talk, general chat about his skills and experience, further insight into the role & projects we are working on / future projects we may explore etc. interview won’t last the full 90 minutes, we just say that to allow enough time. Nothing to prepare however will be asked technical questions based on mathematical skills. 86 | 87 | I felt that I would need a few more days (also I had other interviews during that time), and hence asked for a date and time after (and including) April 1st. 88 | 89 | Come March 30th, and I didn't get a response. I sent an email asking for an update, and got this on March 31st: 90 | 91 | > Apologies for the delay in getting back to you, I have been off with covid, first day back today. Re the technical skills, it is just maths questions, there is nothing of a technical nature. i will check with the team what their availability is for next week and the week after - can you let me know which dates you can make. Sorry again about the delayed response. 92 | 93 | The same day (before I responded to the previous email) I got this: 94 | 95 | > Just an update re date options - Tuesday of next week is the preferable date, if not Wednesday might also work. 96 | 97 | After some minor clarifications from my end, the interview was scheduled for April 5th: 98 | 99 |
100 | 101 | Hi Leader 102 | 103 | I hope you are well. 104 | 105 | I can confirm your interview for Tuesday 5th at 11:30. Our address is 3rd Floor Mustard Systems, Colet Court, 100 Hammersmith Road, W6 7JP. Please ring the intercom (no.9) and ask for myself or [HR 2 name] & make your way to the 3rd floor using the lifts past reception. 106 | 107 | The interview will last approx. 1.5 hours and will consist of the following - 108 | 1. Introduction to Mustard and what we do as a business;
109 | 2. Understanding his background, education and interests - what they'd be most interested to do as part of their job;
110 | 3. Seeing how they approach problem solving: we will solve a few statistical exercises on the 1st year BSc Statistics / A-levels level (pen and paper might be useful for these);
111 | 4. There will be time for questions about the role, company and any other they may have.
112 | Should you have any questions, please let me know. 113 | 114 |
115 | 116 | Note that I also asked about their dress code - they don't have one (which I appreciate). 117 | 118 | About ~150 minutes before the interview, I got this (while understandable, found that a bit annoying though I wonder whether that could have been a good thing): 119 | 120 | > I have just tried to call you and have left a message to inform you that unfortunately, we are going to have to cancel your interview for 11:30 this morning as the lead interviewer has tested positive for Covid-19 so won't be coming into the office. I'd like to apologise for the short notice on this and will be in touch to reschedule your interview as soon as the lead interview receives a negative test result and is back in the office. 121 | 122 | Nearly a month later (May 3rd), I was told that the interviewer returned from sick leave and asked to submit availability for the coming week: 123 | 124 | > Matt is now back from sick leave so please let me know your availability for W/C 9th May. Look forward to hearing from you soon! 125 | 126 | I replied the next day, but got an update only on 17th May: 127 | 128 |
129 | 130 | I do apologise for the delay in getting back to you. A few members of the hiring team have been unexpectedly and therefore this has delayed your interview further. 131 | 132 | We are able to interview you any time next week - please let me know your availability for Tuesday - Thursday anytime after 11am. 133 | 134 | There may be another stage after this interview, if successful, to meet the wider team. Look forward to hearing from you soon. 135 | 136 |
137 | 138 | Soon after, I was suggested May 24th at 11 am. Also worth noting: they do offer reimbursment, but only if one is coming from outside London (which hence made me ineligible) - though not only do I use a bus pass - the nearest TfL (Transport for London) station is, according to Google Maps, Kensington Olympia. This means that as I lived in Zone 2, I would be able to make a return trip (using a railcard discount) for £2.1 as of writing, and the bus pass (using an Oyster student photocard) averages out to ~£2.33 per day for me. I think this is reasonable and doesn't require reimbursement. 139 | 140 | Fortunately, they did not make any further changes, and I arrived at their office about 35 minutes early on the day of the interview. It's about a 7 minutes' walk from Hammersmith Bus/Tube station. 141 | 142 | > **A note about toilets** (since it tripped me): the Hammersmith bus/tube stations are actually part of a larger complex, called as [Hammersmith Broadway](https://hammersmithbroadway.co.uk/plan-your-visit/). Unfortunately, they charge 50p for the privilege of getting your urine! This is not normally the case for TfL tube/rail stations. Fortunately, (free) toilets are available at the building Mustard Systems' office is situated in. 143 | 144 | ### The interview 145 | 146 | ![Mustard Systems' office](../../../media/mustard1.jpg) 147 | 148 | As I appeared more than half an hour early, I was asked to take a seat first. The receptionist (HR 1) asked me if I wanted coffee, tea or water (multiple times), to which I declined (as I don't drink tea or coffee, and already had water) and also informally asked me on how I got to the office (I took the bus). 149 | 150 | At 11 am, I was ushered in to the "boardroom", and the interview started. It should be noted that the Head of Trading joined remotely as he was feeling unwell (again?) - the room had a video camera like what one would see in a university. There was a member of the Quant team who was in-person alongside myself. Then the interview started. The first part was generally stock (why Mustard, what attracted me to the role, etc), and then not long after, the focus switched to the meat, which were the mathematics problems. They are summarised below: 151 | 152 | * The first was about a shuffled deck of cards on a stack. Asked me to find the probability of getting a certain type of card, then asked me to find expectations, and after that told me to find a 95% confidence interval. The last part was the hardest for me and the only part in the interview where I required guidance, as I knew little about confidence intervals because I did not study statistics at university (only probability). I still managed to get the answer at the end, by combining what I knew from probability with the guidance he gave me (such as telling what it is). 153 | * I was given a question which was based on a very similar question from Chapter 4 of Heard on the Street. Are two bets with the same expected return the same? (the answer is no, because the variance has to be considered) 154 | * There was a question regarding Sharpe ratio (which is related to finance; the definition was given) - I got it quickly by utilising properties of the normal distribution. 155 | * There was another question about six dogs and two reviewers giving different marks for each mark, and I was asked several statistical reasoning question that felt a little ML (machine learning)-ish. For instance, one of the reviewers gave one dog a 0/100 - should this be ignored while summarising the data? And how? Why would a mark of 0 be awarded? And what mark should that dog have gotten? 156 | * The final set of question was about betting horses. Given a model that predicts probability of a horse winning over another (say the probability of A winning over B being 0.7), and the data of the actual race (here A won), how one would check whether the model is accurate. A followup reduced the amount of information available (I think it was on how much information was available to identify the horse) which I could get as well. It should be noted that this question took time for me to understand and I did ask for clarification. This one felt even more related to machine learning. 157 | 158 | After that, I was given the chance to ask questions. During the process of their answering my questions, I was asked a few more "stock" questions: 159 | 160 | * The Head of Trading looked at my CV, and asked a question regarding my project. He used that to ask on how I would handle cases where I didn't know the information off-hand. I used the example of my undergraduate research in answering that question. 161 | * I was also asked on how I'd react in cases of volatility - that is, what I'd do if I faced a case where I didn't know the underlying theory or concepts. 162 | * I was asked on my salary expectation. This isn't something that I care at this stage, and I flatly told him so. The role is what made me attract to this role after all. He remarked that it was a "good answer" - not sure on how "sincere" that was though. 163 | * I was also asked a question regarding a Reddit post I wrote (which I think I linked on my cover letter) 164 | 165 | And that was the end, in ~63 minutes. I did not know how well that went (given that the slot was for 90 minutes), but I felt that this was a role I would really like (especially because it is equally mathematical as well as computational). I was also told that they were in the process of interviewing with other candidates, and that I'd get to know whether I passed or failed in a few weeks' time (but isn't end-May already late as it is?). Perhaps surprisingly, I was allowed to take the 100-sheet (200 pages) notebook on which I was working out the mathematics problems with me - which I found surprising since I only used up about 5 sheets of it: 166 | 167 | ![The notebook in which I did my working out](../../../media/mustard4.png) 168 | 169 | ### Role change + take-home exam 170 | 171 | On June 29th, I got this email which confused me, because the role sounded completely different: 172 | 173 |
174 | 175 | Dear Leader
176 | Thanks for your interest in Mustard Systems and for interviewing with us - the team really enjoyed meeting you. We have taken a few weeks to amend our interview process slightly & as part of the application process for the Data Scientist role, we require you to complete the Table of Bets test. 177 | 178 | I have attached the documents down below. Please complete within a word document and send it back to us within a week. 179 | 180 | Please can you also confirm your salary expectations? Look forward to hearing from you. 181 |
182 | 183 | There was 184 | 185 | * a Word file detailing the take-home exam specification 186 | * a CSV file containing the dataset 187 | 188 | The take-home exam ("Table of Bets") gave a dataset of fictional (but realistic according to them) horse bets and asked me to summarise the data, find out subsets of the dataset where it would be a good idea to bet (providing relevant statistical parameters such as confidence intervals), and determining whether a new bet should be staked. Knowledge of statistics and probability (to an introductory level) is expected. I did the exam over the weekend and submitted it back to them. 189 | 190 | They also mentioned that the salary range is £40000-45000 upon my asking (which easily met my standard; I am not particularly motivated by salary). They also clarified that the role change was only in name and that the duties would remain the same - and indeed the job description was otherwise identical. 191 | 192 | ### Notification of failure 193 | 194 | More than a month later, I still had no idea on whether I passed or failed the exam. So I emailed (HR 1): 195 | 196 |
197 | 198 | Dear [HR 1], 199 | 200 | Do you have an update on my application? It’s been nearly a month and a half and I have no idea on how well I did. 201 | 202 | Regards,
203 | Leader 204 | 205 |
206 | 207 | 3 minutes later, I got the failure email: 208 | 209 |
210 | 211 | Hi Leader 212 | 213 | I hope you are well. 214 | 215 | I presumed you would've received an email directly from the team as they had assessed your application over 20 days ago. Apologies if this has not been the case. 216 | 217 | Unfortunately, your application has been unsuccessful. Your submission did not meet the required standard for this role and therefore we will not be progressing your application. 218 | 219 | We wish you all the best for the future. 220 | 221 | Kind regards,
222 | [HR 1] 223 |
224 | 225 | This was frustrating (and no, I got no email from them). I immediately asked for feedback: 226 | 227 | > Can you elaborate on “Your submission did not meet the required standard for this role”? In particular, what was incorrect with my submission (which I am assuming to be only the take-home exam)? 228 | 229 | ... and waited for a week. I was not particularly hopeful given that it's common for companies to not respond to requests for feedback from my experience. But then they did reply a week later: 230 | 231 |
232 | 233 | Hi Leader 234 | 235 | I have pasted your technical feedback below as requested - I hope this helps clarify. As mentioned, we have kept your CV on file should you wish to reapply. All the best for your future endeavours. 236 | 237 | I like the exposition, it is clear and easy to follow Leader's thought process. 238 | 239 | The main concern is that looking at each variable in separation (e.g. going, distance) is not enough. What we really want is to build a model which predicts a bet's profitability given a game's and state's attributes (e.g. going, number of runners, race type). 240 | 241 | I'd also be interested to see an analysis of overall profitability - where we would summarise the strategy's overall profitability, its Sharpe ratio, how consistent it's been, etc. 242 | 243 |
244 | 245 | This is pretty good feedback. It clearly tells what they liked about my submission, and what they felt was lacking. The problem is I am not entirely sure how I could have figured that I had to do _that_ - were they hinting for someone who have had prior experience in this context or do I just lack the competence to figure that out? 246 | 247 | ### Takeaway 248 | 249 | * I think they could have handled the initial stages better. They often took way too long to respond, citing reasons such as someone getting COVID. But then can't they WFH (work from home)? Officially they mentioned that they are on hybrid (60:40 office:home) (unless that was outdated), which makes their delay even more puzzling. I'm similarly surprised by them cancelling the interview because of one person being sick - clearly they could do it hybrid as that person was sick on the day of my rescheduled interview but joined remotely. Why was that not done for my April interview? Ideally, they'd be more flexible with things such as remote working, but that's not a necessity for me. The response when I asked about their in-person preference was generic and not convincing. 250 | * Other than that, they handled things OK, except for the fact that they were just too slow and I'm not entirely sure who would pick this company as a result. Consider their salary for instance. £40000-45000 is fine to me, but consider their target group (which is pretty elitist). Most would be better than me, and I think it is reasonable to guess that the majority would get (multiple) offers, and given that the median salary at my university is around the £45000 mark, many would get one with a significantly higher salary. The question would be - why pick this company then? I seriously doubt most candidates of the calibre Mustard Systems is looking for would be willing to wait this long. 251 | * My 100% failure on take-home exams is something I've been struggling to make sense of (never passed such a test). I do just fine on LeetCode-based exams after all. In many cases (including this), it can be traced down to a form of "I didn't know I had to do _this_", but then it seems like assumed knowledge. I plan to use this failure as a learning exercise, now that I have an idea on what I should have done. This is pretty frustrating to me, given that I don't normally see cases of people doing well in "time-boxed" exams such as LeetCode-based entrance exams but flunk in take-home (i.e, untimed) ones. -------------------------------------------------------------------------------- /Application experiences/2021-22/Quora/Software Engineer - New Grad 2022 (Remote).md: -------------------------------------------------------------------------------- 1 | ## Software Engineer - New Grad 2022 (Remote) 2 | 3 | ### Parameters 4 | 5 | * Location: Remote (worldwide) 6 | * Role: Software Engineer - New Grad 2022 (Remote) 7 | * Applied: August 22, 2021 8 | * Asked to do CodeSignal: October 1, 2021 9 | * Round 1 technical interview: November 18, 2021 10 | * Round 2 non-technical interview: December 7, 2021 11 | * Notification of failure: December 10, 2021 12 | 13 | ### CodeSignal examination 14 | 15 | I am not sure whether this is something everyone gets - I've gotten it in the past, but didn't do well then. This time I got a 843, which is what I sent to them. It's otherwise a standard GCA exam. 16 | 17 | ### Round 1 technical interview 18 | 19 | This was with (interviewer). The interview was focused on one question divided into three parts. Unfortunately, I did have to sign a NDA of some kind and hence will not be disclosing the question in full (the third part of this question was in a LeetCode Discuss post when I checked later). 20 | 21 | * The first third was a LeetCode Medium which I completed fully (implementation based) 22 | * The second third was a harder LeetCode Medium which I had to work my way towards, but think I pulled off in the end (though didn't write any code there). The idea involved binary search. 23 | * The last third was a borderline (if not already) a LeetCode Hard - while I did attempt to work it out, I don't think I did well and didn't give a full answer in my view. 24 | 25 | For some reason, I did not fail the interview. 26 | 27 | ### Round 2 interview 28 | 29 | This was with (interviewer 2), who happened to be an engineering manager at Quora. His questions had a stock element to it, asking for instance 30 | * why I applied to Quora (and asked about the remote part) 31 | * the factors I would look when choosing a job 32 | 33 | No technical questions were asked. One thing I missed is that I thought I would get into the team of my preference. That wasn't quite right - turns out that one applies to the role alone and the team is (while they would consider my preference) up to them. Another thing worth mentioning is that while they normally stick to their coordination hours (9 AM to 3 PM Pacific Standard Time), there is some flexibility in that it may be possible to deviate from that for those who do not have a need to be there (for instance, do not have that many interviews). 34 | 35 | ### Notification of failure 36 | 37 | Was by an email three days after the interview. ~~A request for feedback did not get answered as of writing.~~ **Update (January 4, 2022)** I got a reply after 3 weeks (but then the out of office message said that the recruiter would be on holiday till December 17th?). But then my request was unfortunately thrown out: 38 | 39 |
40 | 41 | Hi Leader, 42 | 43 | I am so sorry for the delay! I was on a long break for the holidays, but thanks for reaching out. Unfortunately, we are unable to share feedback in that stage of the interview process. Thank you though for considering Quora and feel free to keep in touch for future opportunities! 44 | 45 | Cheers, 46 | 47 | (recruiter)
48 | Recruiting | Quora 49 | 50 |
51 | 52 | ### Takeaway 53 | 54 | * This was my first time in my four years of attempts that I did not get kicked out without an interview. 55 | * I had my interviews all at night (9 PM GMT +3). This is not a coincidence - that was the earliest time I could schedule my interview as I had to work with their 10 AM - 5 PM PST (Pacific Standard Time) requirement! 56 | * Turns out that Round 2 was a "lightweight" round and that the real challenge comes in Round 3 (the virtual onsites). So it would be a valid question to ask on why I failed in such a round. As noted above, I did not get feedback on why I failed. One part I think I might have messed up was in a section when I was asked something on the lines of "would you be OK to do full-stack work" (responding to my preferences) - to which I replied "I'm not sure; I will need to think". While my answer was honest, I suspect it may not have been the "right" answer. -------------------------------------------------------------------------------- /Application experiences/2021-22/SIG/Quantitative Trader - 2022 Programme.md: -------------------------------------------------------------------------------- 1 | ## Quantitative Trader - 2022 Programme 2 | 3 | ### Parameters 4 | 5 | * Role: Quantitative Trader - 2022 Programme 6 | * Location: Dublin, Ireland 7 | * Applied: September 13, 2021 8 | * Notification of failure: September 29, 2021 9 | 10 | ### Mathematical entrance exam 11 | 12 | This does not appear to be automatic, though I'm not sure on whether everyone gets it. 13 | 14 | The exam contains 14 questions of a mainly probability nature (with a focus on expectations) and a couple of brain-teasers. While the questions are not particularly hard themselves, there's only 20 minutes in total, so one is likely to be pressured for time. Example questions would be finding the expectation of a particular infinite stream or finding whether a particular bet is good (which would involve comparing the expected value with the value of the bet). The questions were a mix of MCQ and fill in the blanks (usually an integer). 15 | 16 | ### Round 1 interview 17 | 18 | This was with a recruiter from HR. Notice that while they are from HR, they usually have significantly better mathematical understanding that average (in fact, their application for a recruiter wants potential candidates to have done coursework in mathematics). 19 | 20 | The interview was a split between stock (non-technical) and probability-based questions. I was served five probability questions (again focusing on expectations, through there was one on Bayes' theorem). While I did get them all, I had to request hints for a couple. Preparing from quant guides such as Heard on the Street or similar should help. To give more details on the questions themselves (helpful when reading in conjunction with the interview feedback - see the GDPR section): 21 | 22 | * The matching heads problem was given a set of three tosses with a certain probability and given a bet (say getting 3 pounds if two heads and a tail or 0 otherwise) and you pay some money to take the bet, whether this is a good bet or not. The solution would involve drawing up a table of probabilities for that scenario and computing expectations. 23 | * The "painting" question was given a scenario with a particular chance of the painting being real and that being fake, what is the expected value of the painting (again taking expectations); there was a harder variant which I didn't do as well (and hence got a 3) 24 | * I can't recall the box game as well (the question was to find the expected number of boxes to open if I'm right; can't recall the scenario) 25 | * The last question ("3 biased coins") was a standard Bayes' problem; was something like given a fair coin, a coin with only heads and coin with only tails (or something like that with different probabilities), if you pick a random coin and it's head, what is the probability it was from coin 2? 26 | 27 | The non-technical portion was generally standard with some tricky questions. While the classic ones (why SIG, why quant) were asked, tricky ones included: 28 | * how I did "so well" in my undergraduate - while I had a first, it was a very low first and that isn't a case of "done so well" given that getting a first isn't impressive _at all_. 29 | * what my research supervisor would tell about me 30 | 31 | ### Notification of failure 32 | 33 | Was by email. A request to feedback did not elicit a response (this was despite them explicitly telling at my Round 1 interview that I'm free to ask for feedback). When I asked them later about this at my university's career fair, I was told that my interviewer was on leave then and would come later. I didn't ask again after that. 34 | 35 | ### Getting the interview performance using GDPR 36 | 37 | _Written on April 8 2022_ 38 | 39 | I was not convinced that contacting them again (and possibly being ghosted again) was a good idea, so decided to take the GDPR route instead to see what I could get. So I made a standard GDPR request: 40 | 41 |
42 | 43 | Hello, 44 | 45 | I would like access to all of the recruitment data you have (specifically the ones used to make a decision on my application) with me with respect to the Quantitative Trader - 2022 Programme role. This includes the scores I got on the mathematical entrance exam I had to do as the first stage, and any feedback for the interview I subsequently did for this role. 46 | 47 | This is a formal GDPR request to access this data. 48 | 49 | Regards,
50 | Leader Board 51 | 52 |
53 | 54 | I got this from someone who works at SIG's legal team 6 days later: 55 | 56 |
57 | 58 | Dear Mr. Board 59 | 60 | I just wanted to let you know that we are in receipt of your request and are working on it. We will respond within the required timeframe. 61 | 62 | Yours sincerely, 63 | 64 | [human name]
65 | SIG
66 | International Centre
67 | IFSC
68 | Dublin, D01 T6T0 69 | 70 |
71 | 72 | A week from that, I got this, with two attachments which will be described below: 73 | 74 |
75 | 76 | Dear Mr. Board, 77 | 78 | Please find attached the recruitment data requested. I have redacted the name of the interviewer as it is not your personal data. 79 | 80 | Yours sincerely, 81 | 82 | [human name]
83 | SIG
84 | International Centre
85 | IFSC
86 | Dublin, D01 T6T0 87 | 88 | Tel: [a phone number]
89 | Direct:[a phone number] 90 | 91 |
92 | 93 | I found the mention of them redacting the interviewer's name funny; after all, I already know their name! 94 | 95 | Now, for the attachments. 96 | 97 | ![img.png](../../../media/sig1.png) 98 | 99 | The first attachment was my entrance test _in full_ (notice that I only requested the scores I got on the test, but they provided the questions as well). 100 | 101 | > Repository policies preclude sharing the questions themselves - they are most likely recycled after all. 102 | 103 | Even better, there's useful statistical data on my overall performance! 104 | 105 | ![img_1.png](../../../media/sig2.png) 106 | 107 | ... and is useful data for those trying to figure out how well they need to do. And yes, I really did do that poorly. 108 | 109 | Now for the second one: 110 | 111 | ![img_2.png](../../../media/sig3.png) 112 | 113 | > I have had to redact some of the sections. The portion on soft skills cannot be shared publicly because it contains more personal data than I'm willing to share here, unfortunately. 114 | 115 | They said that these were notes - and they are. For instance, the answer to the job search stage (and more) was paraphrased by the recruiter! 116 | 117 | And it gets better. Here's the section on my interview performance: 118 | 119 | ![img_3.png](../../../media/sig4.png) 120 | 121 | ![img_4.png](../../../media/sig5.png) 122 | 123 | That's some seriously good interview data - giving a very good insight into what I messed up on and the few bits I did well. 124 | 125 | And here's my overall performance: 126 | 127 | ![img_5.png](../../../media/sig6.png) 128 | 129 | This alone was enough to convince me that it was my poor mathematical skills that caused me to fail, given that I did better in the soft skill section (which is very rare to see given that I normally fail in those parts an interview). Kind of bittersweet I'd say - bitter in that it was a technical failure (which is disappointing to see given that I try not to get them) - but sweet in that I got a lot of good insight on _why_ I failed. The one problem is that they did not explicitly mention that - notice that all they said in the "do you recommend" part was a "No". 130 | 131 | But that isn't all. Here are the "recruiter comments": 132 | 133 | ![img_6.png](../../../media/sig7.png) 134 | 135 |
136 | 137 | **RECRUITER COMMENTS**: 138 | 139 | Nice guy and was rooting for him. 140 | 141 | He had seen something very similar to Matching Heads, so dont feel like that counts for much. Of the 142 | other 3 questions, he was on the wrong path with 2 of them, and needed hints. 143 | 144 | Softs seemed fine without probing him too hard. 145 | Workload during his exchange year sounded heavy. 146 | 147 | Probably wouldn't have been available for June due to Masters. 148 | 149 | The goal of the interview is to gain relevant information and insight into the candidate's character, 150 | skills, and experience. Do not ask questions pertaining to a candidate’s sex, age, race, color, religion, 151 | creed, marital status, national origin, ancestry, citizenship, military status, veteran status, handicap, 152 | mental disability, physical disability, medical condition, gender, sexual preference or orientation, 153 | gender identity, gender expression, genetic information or political affiliation. 154 | 155 |
156 | 157 | When I first opened this PDF, I actually went right to the end of the document, trying to think of what bad things they had to say about me. So seeing this instead was a shock, and I still cannot figure out if the recruiter's first sentence was meant to be sarcasm or not. Again, the one issue I have with this PDF in general is an _explicit_ confirmation that "this" (like my poor mathematical skills) caused my failure, and adding comments about my masters program confused me since I could not tell if _those_ played a factor in my failure (if I had a 4/5 in the mathematics section, I would have looked at that more closely in my writeup). 158 | 159 | Still, this is the **best** failure data I've ever gotten as of writing in my four years of applying, and I think that means something (well done SIG for providing this, but also shame on them for making me have to take the GDPR route, as I certainly wouldn't be able to get this if I applied for a US role). Is it really hard to give this data to every candidate? In my opinion, no. I mean, in a way I've gotten more respect for SIG because I implicitly know why I failed (and how well I did), instead of having to make guesses (which as it turns out wasn't true). 160 | 161 | ### Takeaway 162 | 163 | This one stung. It is hard for me to find a role that I am really interested in, and I thought I did OK in the interview. I think my mathematical skills are still not at the level of what they should be (which is likely) or that I somehow messed up in the non-technical portion (also possible). Hard to be certain without feedback. Long way to go it seems. 164 | 165 | **Update**: sadly it turned out to be a weakness in my mathematical skills; yes, long way to go indeed. And GDPR is kind of a gem - it can amaze me at times as to how much (useful and insightful) data companies will release with it. -------------------------------------------------------------------------------- /Application experiences/2021-22/Samsung/Graduate Embedded Software Engineer.md: -------------------------------------------------------------------------------- 1 | ## Graduate Embedded Software Engineer 2 | 3 | ### Parameters 4 | 5 | * Applied: April 23, 2022 6 | * Round 1 interview: May 5, 2022 7 | * Round 2 onsite: June 16, 2022 8 | * Notification of failure: July 12, 2022 9 | * Location: Cambridge, United Kingdom 10 | * Role: Graduate Embedded Software Engineer 11 | 12 | ### Coderbyte entrance exam 13 | 14 | After submitting the application, I was asked to take a Coderbyte entrance exam in C. It was a LeetCode easy and LeetCode medium, rather similar in scope (strings and working with binary). The test was untimed, making the process less stressful, but had to be completed in one sitting. The main challenge I had was translating what I'd normally do in Java into C, given that C has very few library functions. Note that Coderbyte will run a few sample test cases, but once submitted, will run some hidden test cases but won't tell your score (so testing with custom test cases is important, like Codility). 15 | 16 | ### Phone interview 17 | 18 | After that, I was asked to set up a phone interview with two people. 19 | 20 |
21 | 22 | Thanks for scheduling a Telephone Interview for the Graduate Embedded Software Engineer position at Samsung Cambridge Solution Centre. 23 | 24 | You will be meeting [person 1] and [person 2]. 25 | 26 | The interview is scheduled for 1:30pm on Thursday 28 April 2022 (British Summer Time). It should last 30 minutes. 27 | 28 | Your telephone interview will consist of a conversation with the hiring manager. They will review your application, get to know you a little better, ask you some competency-based questions in relation to your skills and experience. They will also give you the chance to ask any questions about the role (or about working for us in general). 29 | 30 |
31 | 32 | Unfortunately, the first time it had to be rescheduled with short notice "due to unforeseen circumstances". Now, only one person showed up for the phone interview (not via a video conferencing medium). The interview roughly went like this: 33 | 34 | * First, the classic stock questions (why I applied here) 35 | * It seemed that the interview was not as planned as one may expect. So to give an example, when I said that I was interested in concurrency and multicore architectures, I was asked to tell what I knew about it. Then I was asked to tell what factors are important in an embedded device (such as power), and his follow-ups were dependent on what answer I gave to his previous questions. 36 | * The questions were in general broad and deep. The main parts I could do OK were in architecture and concurrency. The ones I mainly struggled in were in networking (since I barely studied any networking at university) and hence I struggled with questions that asked me to describe what exactly happens when, for example, I go to a particular website (hint: the answer is not as simple as it may seem). 37 | * I was also asked many questions about things such as what I knew about C (such as how hard I found the entrance exam), SWE principles such as agile (almost nothing, since I never had an internship) and whether I was a "team player". 38 | * Then I was given the chance to ask questions, and that was the end in about an hour (excluding a few minutes' delay due to some network issues) 39 | 40 | However, the interviewer seemed to be aware of my lack of formal experience with networks and appeared to take that into account, as I ended up _not_ failing the interview. 41 | 42 | ### Getting the onsite 43 | 44 | About 19 days later, I was sent this: 45 | > Following your successful telephone interview, we are pleased to confirm that we would like to invite you to a First Interview for the Graduate Embedded Software Engineer position you have applied for with us at Samsung Cambridge Solution Centre. 46 | 47 | What confused me was that they said it was a "first interview" given that I had already did one. An email cleared this up: 48 | 49 |
50 | 51 | Thanks for your email. Apologies if the wording was confusing, the interview stages for us are: 52 | - telephone interview 53 | - first stage 54 | - final stage 55 | 56 | This is the largest part of the interview process and will take approximately 2 hours and we would like to invite you onsite. The final stage is a short video call (30 mins max). 57 | 58 | Hope this clears things up. 59 | 60 | Kind regards,
61 | [HR 1] 62 | 63 |
64 | 65 | OK, so that's the (virtual) onsite. I scheduled a date, and got this: 66 | 67 |
68 | 69 | Thanks for scheduling a First Interview for the Graduate Embedded Software Engineer position at Samsung Cambridge Solution Centre. 70 | 71 | You will be meeting [HR 1], [person 3], [person 4], [person 2], and [person 1].
72 | Your interview will take place on Thursday 26 May 2022 and consist of 3 parts, split as follows: 73 | * 1:30pm (British Summer Time) - HR Interview - 30 minutes 74 | * 2:00pm (British Summer Time) - Technical Interview - 60 minutes 75 | * 3:00pm (British Summer Time) - Hiring manager(s) Interview - 30 minutes 76 | 77 | Your interview will consist of three sections: 78 | 79 | - Interview with a member of the People Team (30 mins) 80 | - Technical Interview with the hiring manager and team (1 hour) 81 | - Interview with the hiring manager(s) (30 mins) 82 | 83 | This will be a video interview on webex, please keep an eye out for the video link invite in a separate email.
84 | We've attached a calendar event to this email. 85 |
86 | 87 | OK, so looks like a three-stage virtual onsite for two hours. I booked a suitable room at my university in preparation for the event. 88 | 89 | The day before the onsite (at around 9 pm), I got this strange email which confused me (and prompted an immediate response from my side requesting clarification): 90 | 91 |
92 | 93 | Hi Leader 94 | 95 | Hope you’re well. 96 | 97 | I am looking forward to seeing you tomorrow for your interview, I just wanted to remind you to please keep a hold of your receipts as we can reimburse your travel expenses. 98 | 99 | Just a tip as well, if you get a taxi to the office the drivers often take people to the wrong building on the innovation park as there is another building called St Johns Innovation centre. We are St Johns house, right at the end of Cowley Road. If they do drop you off in the wrong place we are just next door though 🙂 100 | 101 | The full address for the office (just in case you need it again) is: St Johns House, Cowley Road, Cambridge CB4 0DS. 102 | 103 | See you tomorrow afternoon! 104 | 105 |
106 | 107 | It was strange because nowhere was I told that the onsite would be in-person. Both the invite email and what I was told at the phone interview implied that the onsite would be virtual. I couldn't tell at that stage whether the onsite was actually supposed to be in-person or virtual. Turns out that it was indeed in-person, and I got the confirmation at ~11 am on the day of the interview: 108 | 109 |
110 | 111 | Hi Leader, 112 | 113 | My apologies, I have just checked our system and have realised the wrong interview invite template has been used! You should have received an invite for you to attend your interview onsite. This is our admin error, I am so sorry about this. 114 | 115 | I understand if this is too short notice for you attend this afternoon as you would need to make travel arrangements. We can rearrange to 9th June alternatively? 116 | 117 |
118 | 119 | Indeed, a rescheduling was inevitable. It was not feasible for me to travel from South Kensington to Cambridge at this short notice, and even if I were to leave right then, I would barely reach their office. Indeed, I agreed to 9th. 120 | 121 | Turns out that wasn't enough. Unfortunately, I found out that I caught COVID on 6th of June, despite being triple-vaccinated. While legally I am not required to self-isolate, to do that (given that I would be travelling though the tube and National Rail) would be grossly irresponsible at best, and is not something I would be willing to do. The government guidelines suggested self-isolating for five days following the date of getting the positive test result, which meant that the earliest I could do the interview was June 12th. I immediately emailed [HR 1] and even tried calling her many times, but ended up getting the voicemail. A couple of days later, the recruiter responded and offered to set up the interview for 16th. That would work out for me. 122 | 123 | On the day, I took the train to Cambridge North (*not* Cambridge), and from there, it was a 20 minutes (2 km) walk to their office. While I could have taken a taxi (which I would have been reimbursed for), I did not find that necessary here. 124 | 125 | Upon arriving at the place (which I did about 57 minutes early), I was asked to wait. I asked on if there was a place I could have my lunch (which I cooked in the morning and brought with me) - to which I was told that I could go to the canteen. That seemed busy with employees having their lunch (they are given about £4.7 of allowance every day, and even the food/drinks were clearly discounted), and I was explicitly told that I was allowed to take drinks from the machine. 126 | 127 | > Note: be careful with which glass you take! I took one that was too small and did not know how to stop the machine from overflowing, which was a mess to clean up and also nearly burned my hands. 128 | 129 | After that, I waited till [recruiter] arrived. It should be noted that they did not realise that I would come an hour early - I was told that they would have allowed me to have lunch there (i.e, without my having to cook beforehand). Also turns out that one of the interviewers had changed - someone else covered for them as the original interviewer was not able to come. 130 | 131 |
132 | Some pictures 133 | 134 | Alternate text should provide necessary context wherever needed. 135 | 136 | ![Cambridge North station](../../../media/samsung1.jpg) 137 | ![Approaching the building](../../../media/samsung7.jpg) 138 | ![The reception of the building (note that Qualcomm actually occupies part of the building)](../../../media/samsung5.jpg) 139 | ![My visitor badge](../../../media/samsung4.jpg) 140 | ![Staff having meals](../../../media/samsung2.jpg) 141 | ![Close-up of the food on offer](../../../media/samsung3.jpg) 142 | ![Part of the main interviewing room](../../../media/samsung6.jpg) 143 |
144 | 145 | ### The onsite 146 | 147 | The first part was with [recruiter]. I was first given a high-level description of the company. Then I was asked questions such as 148 | 149 | * what made me apply to this role 150 | * what I was looking for in a role 151 | * what I foresee would be my "greatest" challenge and strength that would apply for this role 152 | * whether I had the right to work (they require internationals to take the post-study work visa route) and whether I was fine with their hybrid working policy. 153 | 154 | Then I was given the chance to ask questions, and I was told about the salary (starting at 38,500 pounds) and benefits at the company. 155 | 156 | The second part was with [person 3] and [person 2] (who was covering for [person 4] who could not arrive). 157 | 158 | * I was asked on what I knew about embedded devices 159 | * The two noted that my CV had no industry experience, and I was questioned on things such as teamwork and how I worked with my supervisor (when I did research). They explicitly noted that academic research is different from industrial research. I was also asked to foresee the challenges in working with teams and in a group environment. 160 | * I was asked on what my career aspirations (i.e, what I wanted to be) - I don't know where I would be in a few years' time! 161 | * I was given a whiteboard problem on linked lists. First asked on whether I knew what a linked list was, and to give an example. I was then asked to sketch code for adding and removing (in a singly linked list context). Was also asked briefly about the advantages and disadvantages of doubly linked lists. 162 | * I was asked questions on how I would handle resolving a problem, and what debugging techniques I'd use in the process. 163 | * I was also asked to tell the difference (if any) between ``const int* a`` and ``int* const a``. 164 | * I was given the chance to ask questions (was told that they had 12 spots in the overall graduate scheme, with two left when I interviewed) 165 | 166 | After that, I was given a tour of their office (which I found interesting and a pleasant surprise) - unfortunately was not permitted to take pictures. Contained things such as phones and laptops being tested (with custom firmware) with routers and other networking equipment. The last part was with [person 1] and [person 2]. Involved more quizzing: 167 | 168 | * was (again) asked on why I had no experience in industry (i.e, no prior internships) 169 | * was asked to describe two projects 170 | * was asked on my understanding of multi-core and concurrency (this was mentioned as a module I took at university). In particular, I was asked to describe (in detail) a practical coursework I had to do, and was asked questions on what challenges one would face in a concurrent environment, and what differences exist when multiple threads run in a single core (as opposed to multiple threads running in multiple cores). 171 | 172 | And that was it, recall finishing at about 4:50 pm. Was offered drinks from the canteen before I left, I just took a couple of packed 200 ml orange juice drinks. 173 | 174 | Regarding the reimbursement: they told me that I could fill the form on the day, or [recruiter] could email me and I can fill it and submit (within 3 months of the interview). I opted for the latter, and indeed they reimbursed the money via bank transfer in about a week and a half. No issues there. 175 | ### Notification of failure 176 | 177 | They said that they would notify me within two weeks - but took nearly a month in the end. 178 | 179 |
180 | 181 | Hi Leader,
182 | Thank you for coming in and meeting with us. 183 | 184 | I spoke with [interviewer 1] and we’ve decided not to move forward with your application, Please see below feedback as to why we will not be progressing with your application.
185 | You have very good technical skills and seem very keen to learn new skills. You have a good understanding of embedded programming even though you do not have experience in a related field. 186 | * We are looking for someone who is keen and passionate about embedded work and wants to focus on this. During our interview you expressed you were unsure if you wanted to focus on embedded software. 187 | * In our opinion, you appear to be looking for a research orientated algorithmic role which does not fit the requirements of this role. 188 | 189 | Thank you for spending the time in applying for our vacancy, we wish you luck in finding your next role.
190 | Thanks, Samsung Cambridge Solution Centre 191 | 192 |
193 | 194 | Their providing of written feedback was a pleasant surprise - I've never had a company do this to me before! Their feedback is also meaningful and relevant - if they are looking for someone who is absolutely sure that they would stick with embedded for the rest of their life, that's not me. I don't know what I would do after a year or two - my life is uncertain as of writing. Their second point also makes some sense upon retrospection - what they are saying is that they think that this role isn't a good fit for me - and that's understandable. 195 | 196 | ### Takeaway 197 | 198 | * Overall, good work from the company. The company handled stuff professionally and treated me reasonably well (such as when I had COVID). Unlike my experience with other companies, they tried to make my in-person visit useful (even if I think they could replicate most of it virtually), for instance by providing drinks and having me tour their office. The only issues were relatively minor - such as the initial mishap of the interview setting which required a rescheduling - and the recruiter taking longer than normal at times. I would encourage future candidates to consider having their meals at the company restaurant - just ask the recruiter - if I knew that was a thing I would have! 199 | * The fact that they provided useful feedback in a written form is a first for me and well appreciated - and in fact serves as a model for other companies. It's not that hard! 200 | * This is a role where LeetCode isn't necessary to do well - knowledge of fundamentals is more important (and what I learned from university was enough for me to do well on the technical part). -------------------------------------------------------------------------------- /Application experiences/2021-22/Tibra/Quant Trader - Junior.md: -------------------------------------------------------------------------------- 1 | ## Quant Trader - Junior 2 | 3 | ### Parameters 4 | * Role: Quant Trader - Junior 5 | * Location: Austinmer, New South Wales, Australia 6 | * Applied: November 30, 2021 7 | * Notified of failure: December 21, 2021 8 | 9 | ### HackerRank entrance exam 10 | 11 | This appears to be non-automatic but something every applicant gets. Unlike others I've done, this one is more of a "take-home" style exam and indeed the timer is 48 hours rather than the hour or two that is standard. The questions are still mostly Leetcode-based however: 12 | 13 | * Q1 is a LeetCode Medium that has both "pesky" (implementation-based) and algorithmic aspects. Can be somewhat tricky to get it right quickly, though the lack of time pressure helps. 14 | * Q2 is a LeetCode Medium (straightforward 2-D DP); interestingly I independently came up with the same question about a year and a half back. So this was essentially solving my own question! 15 | * Q3 is an odd one. It is what HackerRank calls as an "approximate solution" question, where there is no one right answer like a standard LeetCode problem. Indeed, this one asks you to perform interpolation and extrapolation to estimate some data. The marking scheme question ensures that it is virtually impossible to get full marks - that being said one doesn't have to go too fancy either to get a reasonable mark (note that you aren't given an indication of the mark you got). 16 | 17 | It should be noted that they have a history of recycling the same test questions - I've applied since the 2019-20 season and every time they have given me the exact same questions! This caused an issue this year, where I tried to access it but was told that I had already attempted the test. I tried asking them on what I should do, but got no response in a reasonable amount of time (they gave me five days and I had my finals on their deadline), so simply "redid" it using a different email. Note that while I did not copy any code at all, I still had an understanding of the approaches and common pitfalls from the last attempt, and that did help. With that it took 80 minutes to complete the test fully. 18 | 19 | ### IQ and "personality" exams 20 | 21 | The next stage was from Talegent (not a company I recall doing tests from before), and was a combination of 22 | 23 | * a triplet of English (reading comprehension and vocabulary in context), Mathematics (basic data inference) and logical reasoning. For the former two it's answering 5/6 questions in 4 minutes, and the last allows 3 minutes for each question. The test is paced fast enough that it is likely one can be pressed for time, though it's still reasonable. Not that different from similar tests from other companies. 24 | * a "personality" test. This was so boring, forcing me to answer ~100 questions asking me to give an indication of agreeness of various statements from "strongly disagree" to "strongly agree". This was similar to the Microsoft Forms (+ an additional personality quiz) they sent when I applied last year (see below for an example from last year): ![img.png](../../../media/tibra1.png) 25 | 26 | ### Notification of failure 27 | 28 | Was by email. From my experience they are not receptive to asking for feedback. The contents of the 2021-22 and the 2020-21 failure emails are almost identical. 29 | 30 | ### Takeaway 31 | 32 | * My application this year was a regression compared to my 2020-21 attempt. That time, I did manage to get all the way to the phone interview (which by the way was HR with a couple of brain teasers which I did get) and hence I did less well this time. 33 | * The only possible stage I could have failed this time were the IQ + personality entrance exams, and historically it is not common for me to fail IQ-based entrance exams (though that would always remain a possibility). This leaves me with the personality exam, which is something I routinely fail (in fact I'm not sure how I didn't fail that last year). Again I cannot be certain without feedback, and this is one reason I find rejection letters that do not give any indication so frustrating. 34 | * My understanding is (as a non Australian/New Zealand citizen) is that the AU job market is mostly off limits for me. I thought this was because the [Australian 482 visa](https://immi.homeaffairs.gov.au/visas/getting-a-visa/visa-listing/temporary-skill-shortage-482) explicitly says that two years' work experience in the relevant field is required, and this was why [Epoch Capital](../Epoch%20Capital/Quant%20Analyst.md) failed me at the Round 1 interview (BTW they explained the issue pretty well). Now, Tibra explicitly says that they are happy to sponsor visas, quoting them: "Tibra are accepting international applications year round however we recommend applying as soon as possible." and "Tibra will sponsor your visa", with emails saying the same as late as March 2022: ![img.png](../../../media/tibra2.png) Clearly, there is something missing here since to me, Epoch and Tibra are telling me contradictory statements. I could be missing something, but am not sure what that is, and [asking on Reddit](https://www.reddit.com/r/australia/comments/rlb6lb/visa_sponsorship_query_for_australia/) gave me the impression that they are _in practice_ requiring for those with experience. Again, I do not know. 35 | * This failure stung pretty hard given the challenge of finding a role that really interests me (also the fact that any regression is worrying given the state I'm at). -------------------------------------------------------------------------------- /Application experiences/2021-22/Virtu/Quantitative Trading Analyst.md: -------------------------------------------------------------------------------- 1 | ## Quantitative Trading Analyst 2 | 3 | * Role: Quantitative Trading Analyst 4 | * Location: Dublin, Ireland 5 | * Applied: November 30, 2021 6 | * Notified of failure: December 10, 2021 7 | 8 | ### Codility entrance exam 9 | 10 | I suspect everyone gets it, though I'm not sure. 5 questions, 75 minutes. However, the questions weren't hard - mostly on the lower end of LeetCode Medium (if not easies) and hence I completed in half-time. Worth mentioning: as with any Codility examination, the sample test cases aren't enough, and I would have blundered on a couple if I didn't verify with my own test cases. 11 | 12 | ### Round 1 interview 13 | 14 | This was rescheduled twice (with very short notice!) - that being said the reasons cited (storm Barra) were valid and made sense, through irritating. This was by a phone call and not using a VoIP medium like Zoom or Skype. 15 | 16 | She started the interview by telling that I did quite well in the coding examination (but as usual, refused to tell me what my score was). She then asked me generally HR questions (why Virtu, why quant), asked me (out of the blue!) what market making was in my own words and a couple of brain-teasers, which went (paraphrased from memory) like this: 17 | 18 |
19 | * What is the angle between the minute and hour hand of a clock at 5:15 PM?
20 | * Follow-up: at what time would the minute and hour hand of a clock coincide after 5 PM? 21 |
22 | 23 | I finished them off quickly and correctly (in about 30 seconds). And that was the interview - fairly short and ended in ~15 minutes. 24 | 25 |
26 | The answers to the brainteasers: 27 | 28 | * For the main question, let 0 degrees be the number 12 of the clock. Then, the minute hand would be 90° from the number 12. The hour hand would be 150 + (30/4) = 157.5°. The difference is hence |157.5°-90°|=67.5° 29 | * For the follow-up, let _x_ be the minute. Then we need to find the angle subtended by the hour hand - from the first part, this is (150 + (30)_x_/60)°. The angle subtended by the minute hand is simply (6*x*)°. Solve for _x_: 150 + _x_/2 = 6*x* -> 150 = 11x/2 -> _x_ = 300/11. The answer can be shown to be somewhere between 5:27 and 5:28 PM. 30 |
31 | 32 | ### Notification of failure 33 | 34 | I got the failure notification in a day by email (which was expected as they told me I'd know of the result in a day). The email precluded any chance of getting feedback on my failure. 35 | 36 | ### Takeaway 37 | 38 | With a failure like this, I'm not sure what went wrong given that I did well in the coding examination and the brainteasers. -------------------------------------------------------------------------------- /Application experiences/2021-22/Visa/Software Engineering and Testing Graduate.md: -------------------------------------------------------------------------------- 1 | ## Software Engineering and Testing Graduate 2 | 3 | ### Parameters 4 | 5 | * Role: Software Engineering and Testing Graduate 6 | * Location: Reading, United Kingdom 7 | * Date of application: December 6, 2021 8 | * Notification of failure: December 19, 2021 9 | 10 | ### HackerRank entrance exam 11 | 12 | This appears to be something everyone gets. 2 questions, 60 minutes. 13 | 14 | The exam was harder than I expected. The first one was a LeetCode Medium, pesky but something I quickly finished. The second one was a harder LeetCode medium and was a tricky 2-D DP problem - I didn't expect that one to show up for a company like Visa (that would previously cheap out by using Arctic Shores). While I did get it fully right in the end, it did take up time, and I was left with only 6 minutes in the end. Note that the HackerRank title included "New Grad-Masters/PhD" - suspect undergraduates would be served easier questions? I also suspect that a full mark would not be required to progress to the next round given its relative difficulty. 15 | 16 | ### Situational judgement exam 17 | 18 | After that (not immediately though), I was asked to complete a SJT (situational judgement test). This was 15 questions, and while the question did have a SWE flavour in it (for instance, referencing terms such as scrum), it was otherwise not different from the others I've done. 19 | 20 | ### Notification of failure 21 | 22 | Right after doing the test, I was notified that I failed the test and would be kicked out immediately: 23 | 24 | ![img.png](../../../media/visa1.png) 25 | 26 | I also got a "feedback report" by email. The only meaningful page was this: 27 | 28 | ![img.png](../../../media/visa2.png) 29 | 30 | It should not be hard to guess the usefulness (almost none) - it was definitely not "helpful" and the "possible development activities" is junk without more context. 31 | 32 | **Update (January 3, 2022)**: given that this role is in the UK, I found out that I'm eligible under the GDPR (see [Article 22](https://gdpr-info.eu/art-22-gdpr/)) to have this automated rejection reviewed. So I did that, first asking SHL, who rightly told me to ask Visa (but then I couldn't find any email to contact, so asked SHL to forward it to them). I got this email (along with an automated rejection email) from the man whose picture is shown in the original rejection (note that someone was cc'ed whose rank could not be verified and hence their name will not be published): 33 | 34 |
35 | 36 | Hi Leader, 37 | 38 | I hope you’re well and had a nice break over the festive period. 39 | 40 | I am getting in touch as the team at SHL contacted me and let me know that you have requested human intervention in your application. I have taken the time to review your results from the Situational Judgement Test you completed and we will be staying with the original decision. Whilst you clearly have very strong technical skills, I don’t feel the type of role or working environment we have at Visa is a good fit based on your responses to the SJT questions. 41 | 42 | The SJT is built using real scenarios our Graduates have found themselves in and how they responded (and how their managers want them to respond), so whilst the SJT suggests you aren’t a strong fit for Visa, companies looking for people to handle the same scenarios in different ways, or handling scenarios you wouldn’t experience at Visa, could be a great fit for you. 43 | 44 | All the best for the future,
45 | Daniel 46 | 47 | Daniel Farrar (He/Him)
48 | Next Gen Talent Lead - Europe
49 | Visa, People Team
50 | [mobile and email]
51 | Paddington, London 52 | 53 |
54 | 55 | This is also useless. I know that I've been rejected by means of a pesky test, and hence all are you seem to be doing is effectively parrot-repeating what the SHL automated rejection said. What I was looking is either a full reversal (given my highly lopsided results) or a proper explanation of why my answers were rejected automatically (what you said doesn't count). Looking at the GDPR article, it says is that the company is obliged to provide "at least the right to obtain human intervention on the part of the controller, to express his or her point of view and to contest the decision.". I'm not sure whether that means that I have the right to explain why I should not be rejected? I don't know. 56 | ### Takeaway 57 | 58 | * I'm used to failing SJT tests and its derivatives - in fact I rarely do _not_ fail them. That being said, I have a feeling this was also implicitly looking for some SWE experience - of which I have none. Maybe I'm wrong there, but the terminology contained more SWE-based terms than some others I've done. 59 | * I hate SJT tests with passion. -------------------------------------------------------------------------------- /Application experiences/2022-23/Oracle/Software Engineering Internship.md: -------------------------------------------------------------------------------- 1 | ## Sophomore Software Engineering Internship with Oracle 2 | Author: [Ben Zhao](https://github.com/bzhao-1) 3 | 4 | ### Parameters 5 | 6 | * Location: Austin, TX, United States 7 | * Start Date: June 20th 2023 8 | * End Date: Sep 8th 2023 9 | * Pay rate: $38/hr + Additional Relocation Stipend 10 | 11 | ### Phone Screen 12 | Application was sent in beginning of August 2022. First call with recruiter was middle of August 2022. Phone screening, asked about personal background 13 | resume experiences, and interest in Oracle. 30-min conversation and recruiter said would be scheduled for first round interview. 14 | 15 | I should preface the following by saying that your recruiter will send an interview prep packet prior to each interview with tips and advice. Look at the 16 | OCI core values and think about how you can tie your experiences to really emphasize these values because they stress them during recruiting. 17 | 18 | ### 1st Round Interview 19 | Heard back from recruiter beginning of October. Scheduled first round interview for middle of Oct. 1 hour interview with new grad SWE on OCI team that had 20 | been with Oracle for a little over a year. Very conversational interview, about 30 minutes of behavioral questions regarding my background, challenges in the 21 | workplace and technical projects. Then 30 minute technical interview. 22 | 23 | Given the option to chosen between 1 of 2 LC easy style questions. Due to NDA reasons can not disclose exact questions asked but can say the categories. 24 | 25 | 1) String based question where you had turn strings into integers based on preassigned values 26 | 2) Array Manipulation type question 27 | 28 | Heard back from recruiter same day about 3-5 hours later with news that I would be scheduled for a 3 hour loop interview superday 29 | 30 | ### OCI Superday 31 | 32 | So I was told that it would 3 back to back interviews initially. But then I got the email confirming times and it was only 2. 🫡 Anyway it was 2, 1 hour 33 | back to back interviews with senior level engineers with OCI. 34 | 35 | #### First Interview 36 | 37 | 1 hour behavioral but specifically dove into the technical aspects of my past projects and asked me to describe my front end experience, previous internship, 38 | and other leadership experiences extremely in depth. My interviewer had me ask questions throughout the interview and it was almost a 60%, 40% split of me 39 | and him talking which really put me at ease. 40 | 41 | #### Second Interview 42 | 43 | 1 hour mix of behavioral and technical, similar to first round but with harder technical question. 44 | 45 | LC easy to medium level question, again array manipulation 46 | 47 | Then a series of extensive behavioral questions to determine my fit. During the technical round, I had a lot of nervousness and got a couple of hints 48 | but was able to write efficient and correct code. 49 | 50 | ### Offer Timeline 51 | 52 | I heard back from my recruiter in 2 days after the superday with the news of a "soft" verbal offer. Then about 10 business days later, we called again to 53 | discuss the "official" verbal offer, and they told the compensation and stipend package. This conversation was two weeks after the superday. Finally, 54 | I got the offer letter on the following Monday. 😁 55 | 56 | ### Summary 57 | Please reach out to me with any questions about Oracle or my process. My socials are on the homepage of my GitHub profile (see top of page). 58 | I would love to share how I got here and help any aspiring SWEs get their dream internship! 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | -------------------------------------------------------------------------------- /Application experiences/2023-24/Microsoft/Research Software Engineer.md: -------------------------------------------------------------------------------- 1 | ## Research Software Engineer 2 | ### Parameters: 3 | * Applied: April 28, 2024 4 | * Round 1 interview: July 18, 2024 5 | * Finals: August 6, 2024 6 | * Notification of failure: August 13, 2024 7 | 8 | ### Prelude 9 | 10 | If we look at the job description (below), notice that it only wants people with a PhD (which I don't have, as I only had a masters). I actually applied since I read the "equivalent training" part instead, and I thought that my experience in undergraduate research would qualify. In other words, on paper I was underqualified and should not have gotten anywhere. Keep this in mind for the rest of this review. 11 | 12 | ![microsoft[2]1.png](..%2F..%2F..%2Fmedia%2Fmicrosoft%5B2%5D1.png) 13 | 14 | Now, as is usual with me, Microsoft tends to ghost people and silently reject them (which means that you'll be left in the dark if you don't check the portal). I actually forgot about this as a result, and hence was pleasantly surprised to get this: 15 | 16 |
17 | Dear Leader,
18 | Thank you for application for a post-doc resident position at Microsoft Research Cambridge. Please accept my apologies for the delay in getting back to you.
19 | Congratulations – you are through to the next stage! This is a 45-minute phone-screen with me, over Teams. We will chat about your previous work, I’ll let you know a bit more about the residency position, and we will also do a small amount of coding together on a shared whiteboarding website. The aim is to have a technical conversation about a small bit of shared code, rather than an old-fashioned coding interview. I’ll leave a bit of time at the end to cover any questions you might have. 20 | 21 | Please could you suggest two 45-minute time slots over the next couple of weeks which would work for you? I’ll then send you a Teams meeting request for the one which works for me. 22 | 23 | Many thanks,
24 | [lead engineer] 25 |
26 | 27 | Notice that the email still says that it's for a "post-doc" even though I don't have a PhD. It wasn't clear to me as to what was going on here - is this "just in name" (i.e, that it's not really a post-doc)? Anyway: I scheduled this for one week later. 28 | 29 | Now: naturally I looked for resources and guides. And there was very few. I asked on Reddit. No one responded. I asked elsewhere. No one responded. Existing Reddit posts were often years old. In the end, I tried to work using guides such as https://medium.com/@FisherDanyel/how-to-interview-as-an-industry-researcher-aa5130bbb99a (which was useful though generic). This lack of resources was a central problem throughout this application. 30 | 31 | ### The first round interview 32 | 33 | Was by Microsoft Teams by [lead engineer]. The interview roughly went like this: 34 | 35 | * First they introduced themselves. This was around the time I asked them about the PhD question. Turns out that they were looking for people from various background, and felt that a masters provided some of the necessary research experience they were looking for. 36 | * Then I was asked to (sort of) describe a project/work - which I did explain in some detail. 37 | * After that, I was served a LeetCode Medium - coin change (greedy-friendly). It seems like Microsoft _really_ likes such problems, since they asked this in the [last time I managed to get to the finals with them](../../2021-22/Microsoft/UK%20New%20Grad.md). I coded it up, and he asked related questions (such as factors to consider if this was to production) 38 | * I was given the chance to ask questions. 39 | 40 | This took about 50 minutes in total. 41 | 42 | ### Getting to the second stage 43 | 44 | _Note: while a NDA was signed, this does not preclude including any of the below information as far as the NDA is concerned._ 45 | 46 | After about a week, I got this: 47 | 48 |
49 | 50 | Dear Leader, 51 | 52 | Thanks for taking the time to speak with me this week. I’m happy to tell you that you are through to the next round. This will be entirely virtual over Teams, and consist of a talk to our research team, followed by a short chat with our team leader, [team lead], and then a number of longer one-on-one interviews with members from across our group. 53 | 54 | I’ll be engaging with our HR folks to put a schedule together, but they are currently on vacation until Monday, so expect an email sometime next week with more details. 55 | 56 | Many thanks,
57 | [lead engineer] 58 | 59 |
60 | 61 | OK that's nice. And indeed the HR was on holiday; a few days later, I got this: 62 | 63 |
64 | Good morning Leader 65 | 66 | My name is [recruiter], I work in the Recruiting Team for Microsoft Research. 67 | 68 | [lead engineer] has asked me to get in touch to invite you to attend a Final Round Interview for the Research Software Engineer position – congratulations! 69 | 70 | The interviews will be held virtually over Teams and will consist of a talk to our Research Team (45 mins talk plus 15 mins for questions), followed by a 15-minute chat with our team leader, and then four 45 minute one-on-one interviews with members from across our group. Those interviews will cover your recent work, skills, and learning mindset. 71 | 72 | Please can you confirm your availability over the next week – specifically any dates or times we should avoid, and also the time zone you are currently in? 73 | 74 | I look forward to hearing from you. 75 | 76 | Best wishes 77 | 78 | [recruiter] 79 |
80 | 81 | She also attached a couple of PDF files: [microsoft[2]2.pdf](..%2F..%2F..%2Fmedia%2Fmicrosoft%5B2%5D2.pdf) and [microsoft[2]3.pdf](..%2F..%2F..%2Fmedia%2Fmicrosoft%5B2%5D3.pdf). The second PDF isn't all that useful. The first one however is, and it confused me even further. Notice that I need to submit a full research talk - but I _don't_ have _that_ much experience! I didn't really know what to do there, and as expected, the internet was useless and there were no real reviews on how people prepared for it - let alone someone without a PhD. The other problem was the date. I was travelling for the entirety of next week and my schedule was hence rather tight - I could find only one free day (Tuesday) to conduct the interview. I did suggest that day to them, with the additional note that they let me know when they'll be available if Tuesday wouldn't work for them. 82 | 83 | I responded a day later (right after she sent a reminder) with my availability, but didn't get a response. On Friday, I got this: 84 | 85 |
86 | Hi Leader, 87 | 88 | Our Scheduling Team will be in touch to get this organised for you today. We usually try and run the interviews consecutively on the same day, but this will depend on co-ordinating yours and the Assessors availability. 89 | 90 | The Scheduling Team will be sending you a talk form which we need for the organisation of your presentation, please can you return this to us as soon as possible. For your information, you may notice the reference “Research Intern” in your interview confirmation – Researchers are classed as Interns on our internal systems due to the temporary nature of the role and again this is to be expected. 91 | 92 | If you have any questions in the meantime, please do not hesitate to get in touch. 93 | 94 | Kind regards 95 | 96 | [recruiter] 97 |
98 | 99 | OK... and what did the team in the "scheduling team" send? 100 | 101 |
102 | 103 | Hi Leader, 104 | 105 | Good day! I hope all is well. 106 | 107 | Congratulations on being selected for the Final Round of interviews for the Research Software Engineer position with Microsoft! 108 | 109 | Attached to this email is a form with some details you will need to fill out regarding the talk you will give(Presentation) as part of your interview. Please fill out the form and send it back to me as soon as you can. 110 | 111 | I will also need you to sign an NDA for your interview via Microsoft Teams, can you please confirm your home address to enable me to create this for you. 112 | 113 | Should you have any questions concerning interview scheduling, please feel free to contact me at [email] 114 | 115 | For queries concerning the recruitment process and feedback from your interview, you may contact the recruiter directly. Her contact details are as follows: [recruiter] - [recruiter email] 116 | 117 | Please let me know if you have any questions. 118 | 119 | I look forward to hearing from you and I will be in touch again soon. 120 | 121 | Kind Regards,
122 | [scheduler name]
123 | [email]
124 | Microsoft Recruiting 125 |
126 | 127 | The "scheduler"'s email (v-, meaning _vendor_) suggested that they are a third party on behalf of Microsoft. 128 | 129 | What was the attachment about? It was a Word file with the following: 130 | 131 |
132 | Lecture Details 133 | 134 | * Duration: 45-minute talk with 15 minutes Q&A 135 | * Speaker Bio 136 | * Title 137 | * Abstract 138 | * Applicable Audience: Select one of the following: 139 | * Microsoft Full Time Employees 140 | * Microsoft Research Full Time Employees 141 | * Microsoft Research Cambridge UK Full Time Employees 142 | * Recording/Broadcasting Option: Select one of the following options (Please note, if you chose to have your lecture recorded you will be required to sign a Speaker Release form. Without this signed form, we are unable to record your lecture.) 143 | * Do not record/room only 144 | * Record - make available as per the above applicable audience 145 | * Additional Notes 146 |
147 | 148 | So up until now I was under the impression that I just present without any sort of advance notice - this was unexpected and a further sort of confusion since again I'm not someone with a PhD and what's with the "recording/broadcasting" option? This is a job interview, not a conference... I did ask on whether I could have a couple of days for this, but was told that I needed to submit by "EOB" (end of business) the same day, without conveniently mentioning the timezone (as that person seemed to be located in the Philippines but was working US business hours?). With no choice, I came up with one (essentially similar to the idea I did in my first-round interview) and submitted that. I also queried the recruiter on whether slides were expected, who replied in the affirmative. 149 | 150 | I also got the schedule that way - which again was a bit surprising (all times are UTC+1 or London time with DST) 151 | 152 | * Meeting with the hiring manager - 4 pm to 4:15 pm on August 5th 153 | 154 | The others were on the 6th: 155 | 156 | * Research Talk: 10 am to 11 am 157 | * One to one interview 1: 11:15 am to 12 pm 158 | * One to one interview 2: 1 pm to 1:45 pm 159 | * One to one interview 3: 2 pm to 2:45 pm 160 | * One to one interview 4: 3 pm to 3:45 pm 161 | 162 | The only problem was the one on 5th, not because it was a day before but because I was travelling on that day (I calculated that I should be able to reach my hotel with ~100 minutes to spare). I notified the recruiter about this, who said that it was OK and to keep him updated in case of any issues. 163 | 164 | Over the next few days, I tried what I could to prepare the presentation and other components (it was unfortunate that I was also busy with my travel preparation). Again, resources were non-existent in both video and text form and I was finding this pretty hard. 165 | 166 | On August 5th, things unfortunately did not go to plan. My flight landed on time, but my connecting transport had an unexpected delay, and worse I miscalculated the distance _and_ there was quite some traffic at the end which meant that I was not at my hotel by the time of the interview. ~20 minutes before, I tried contacting the scheduling person, no response. It turns out that: 167 | 168 | > Thank you for your email. I’m currently out sick today but will get back to you as soon as I can upon my return. 169 | 170 | ... anyway at the meeting time, I used my mobile data to connect to the interview, and asked if he would be willing to have it an hour later. He agreed to this. In the end, I reached my hotel room with 15 minutes to spare. 171 | 172 | ### The finals 173 | 174 | #### Round 1 175 | 176 | This was basic. Basically asked me on why I was late, and explained about what the role was and common misconceptions people have about the role (for example, the role is fixed-time - one is not guaranteed a permanent research role and there apparently aren't that many, and you'll be primarily working for a group, and it's more team-based than a post-doc). This was helpful, but I felt that some sort of FAQ should have been placed in the site. I also queried about how I should handle the research interview - and that actually was helpful (i.e, they know that and it's OK to adapt and customise the guide to your case - this should have been told before!). Not much else was there - which after all was expected for a 15-minute call. 177 | 178 | The rest of the rounds happened the next day. 179 | 180 | #### Round 2 (the research talk) 181 | 182 | This did not go well: 183 | 184 | * Severe network issues, where they couldn't hear me for some reason. This was so bad that in the end I resorted to using my phone (which is a foldable, so it was actually manageable) 185 | * They also didn't seem as interested in what I presented, with not that many questions asked and nothing at the end. I don't know whether this is just my perception, whether my presentation was out of scope or too trivial or easy or whatever. I just didn't feel good about it. Note that some of the interviewers later said that they liked my talk, but I was not convinced that they were just trying to be nice. 186 | 187 | #### Round 3 (the first technical round) 188 | 189 | Note that in the initial interview invite, the Codility link was missing - I did inform the interviewer and Round 1 about this. This interviewer actually asked when I wanted the interview, and when this was clarified, provided his Codility link. 190 | 191 | First I was asked questions about the presentation - this was actually meaningful. Then came the LeetCode problem - the code below is self-explanatory: 192 | 193 | ```csharp 194 | namespace N { 195 | class C { 196 | 197 | // Compute average pixel value in the image. 198 | public uint8 ComputeAverage(uint8[][] image) 199 | { 200 | // 1 2 3 201 | // 2 3 4 202 | int sum = 0; 203 | for (int i[]: image) // i = 1 2 3 204 | { 205 | for (int j: i) 206 | sum+=j; 207 | } 208 | for (int i = 0; i < image.Length; i++) 209 | { 210 | for (int j = 0; j < image[0].Length; j++) 211 | { 212 | sum+=image[i][j]; 213 | } 214 | } 215 | return sum/(image.Length * image[0].length); 216 | } 217 | 218 | // Compute a new image where each pixel is the same as in the input image 219 | // if greater or equal to threshold value, 0 otherwise 220 | // Example: 221 | // 12 56 14 0 56 0 222 | // 04 42 99 -threshold=20 -> 0 42 0 223 | // 23 60 21 23 60 21 224 | public uint8[][] ThresholdImage(uint8[][] image, uint8 thresholdValue) 225 | { 226 | uint8[][] new_image = new int[image.length][image[0].length]; 227 | for (int i = 0; i < image.Length; i++) 228 | { 229 | for (int j = 0; j < image[0].Length; j++) 230 | { 231 | new_image[i][j] = (image[i][j] >= thresholdValue ? image[i][j] : 0); 232 | } 233 | } 234 | return new_image; 235 | } 236 | 237 | // Extra credit: extract a subset of the image. 238 | // Example: 239 | // 12 56 14 240 | // 04 42 99 --startRow=1, startColumn=1, width=2, height=2--> 42 99 241 | // 23 60 21 60 21 242 | public uint8[][] CutImage(uint8[][] image, int startRow, int startColumn, int width, int height) 243 | { 244 | int[][] cut_image = new int[width][height]; 245 | // TODO make sure that we can actually cut the image - for example does not go out of bounds 246 | if (width - 1 + startRow >= image.Length || height - 1 + startColumn >= image[0].length) 247 | return null; 248 | for (int i = 0; i < width; i++) 249 | { 250 | for (int j = 0; j < height; j++) 251 | { 252 | cut_image[i][j] = image[i + startRow][j + startColumn]; 253 | } 254 | } 255 | return cut_image; 256 | } 257 | 258 | // Extra extra credit: convolution 259 | public uint8[][] AverageConvolutionFilter(uint8[][] image, uint8 kernelSize) 260 | { 261 | uint8[][] output = new int[image.length][image[0].length]; 262 | 263 | for (int i = 0; i < image.Length; i++) 264 | { 265 | for (int j = 0; j < image[0].Length; j++) 266 | { 267 | int sum = 0; 268 | int cnt = 0; 269 | for (int k = 0; k < image.Length; k++) 270 | { 271 | for (int l = 0; l < image[0].Length; l++) 272 | { 273 | int diff = Math.abs(i - k) + Math.abs(j - l); 274 | if (diff <= kernelSize && diff != 0) 275 | { 276 | sum += diff; 277 | cnt++; 278 | } 279 | } 280 | } 281 | output[i][j] = sum/cnt; 282 | } 283 | } 284 | return output; 285 | } 286 | } 287 | } 288 | ``` 289 | 290 | Notice that the four parts were a ramp up in terms of difficulty - starting from an easy leetcode to a Medium at the last stage (when optimised - I did not do it nor was I expected to, but I was asked on how I'd improve the code). And that was about it (was given the chance to ask questions). Network issues were still a problem at this stage. 291 | 292 | #### Round 4 (the second technical interview) 293 | 294 | The first part was system design, where I was given a situation about a Python tool used to extract images and upload to the server. The questions were OK and not too complex (eg how I would design it, scaling etc), albeit hard to understand at times. 295 | 296 | Then came the technical component. Again, the code is self-explanatory and would be a LeetCode easy: 297 | 298 | ```csharp 299 | package com.codility; 300 | 301 | // you can also use imports, for example: 302 | // import java.util.*; 303 | 304 | public class Solution { 305 | 306 | 307 | // Repeat a waveform multiple times with different amplitudes. 308 | // @waveform: an array of samples that make up the waveform (volts, -1.0 to 1.0). 309 | // @amplitudes: list of amplitudes for each repeat (0.0 to 1.0). 310 | // 311 | // Returns the original waveform repeated once for every element in 312 | // @amplitudes, with each repeat scaled to that amplitude. 313 | 314 | // Example: 315 | // RepeatWaveForm(waveform=[-1.0, 0.5, -0.5, 1.0], amplitudes=[1.0, 0.25, 0.5]) 316 | // -> [-1.0, 0.5, -0.5, 1.0, -0.25, 0.125, -0.125, 0.25, -0.5, 0.25, -0.25, 0.5] 317 | 318 | public ArrayList RepeatWaveform(double[] waveform, double[] amplitudes) 319 | { 320 | ArrayList result = new ArrayList<>(); 321 | for (int i = 0; i < amplitude.length; i++) 322 | { 323 | for (int j = 0; j < waveform.length; j++) 324 | { 325 | result.add(waveform[j] * amplitude[i]); 326 | } 327 | } 328 | return result; 329 | } 330 | 331 | public converttosignal(double d) 332 | { 333 | return (int)((65535d/2d)(1d + d); 334 | } 335 | 336 | // U16 0x0000 = -1V 0xffff = +1V 337 | } 338 | ``` 339 | 340 | The network issues were particularly severe in this interview. 341 | 342 | #### Round 5 (the first non-technical interview) 343 | 344 | This one was a bit unexpected - this was all about Microsoft's diversity and inclusion and how my working experience correlated with it. For example the diversity of where I work (I work for a client) and how I would ensure diversity amongst the client's employees, and how I would ensure diversity in the hiring process (?). This was rather strange to me, and while I did honestly explain my stance, it was not something I had to deal with in a prior interview. 345 | 346 | Then they said "this is not amongst the questions I had planned to ask" and went on to implicitly ask my opinion on affirmative action, claiming that they benefited from it but understood my stance on this topic! This was a bit surprising, though I did again explain my viewpoint and my experience with clients and companies I've worked for. 347 | 348 | #### Round 6 (the second non-technical interview) 349 | 350 | This was more of standard "tell me a time when" situational judgement questions. 351 | 352 | ### Notification of failure 353 | 354 | Was by email about a week later: 355 | 356 |
357 | Dear Leader 358 | 359 | Hope my email finds you well. I am coming back to you with a final decision for the Research Software Engineer, reporting into [team lead]. 360 | 361 | It was incredibly hard to come to a conclusion, you have displayed a great profile and skills, but on this occasion we will not be able to offer you the role. That being said, if anything should come up in the future, we will let you know. Meanwhile, it’s always a great idea to check Jobs in Research | Microsoft Careers for other open roles, as we always have opportunities which we post there. 362 | 363 | Thank you once again for your time, involvement and energy – we have enjoyed greatly knowing you better. 364 | 365 | Best wishes 366 |
367 | 368 | A request for feedback went nowhere. 369 | 370 | ### Takeaway 371 | 372 | Frustrating. This was frustrating from the lack of documentation about this online (and no one I knew or asked knowing anything about the process either), to me having to navigate an interview originally designed for PhD graduates, to the (perceived) lack of interest in the work I did in the talk, to some of the awkward questions I had to handle, to the lack of feedback. In fact, if we go back to why this repository even exists, one reason is so that future people getting an interview wouldn't be as clueless and struggle as much as I did in the process. While I failed (as usual), if someone else uses this to get the role, it's my consolation prize. 373 | 374 | This is the second time I failed with Microsoft in the finals, and perhaps by coincidence, the recruiter handling this in both cases was the same. -------------------------------------------------------------------------------- /Application experiences/2023-24/Tibra/Quant Trader Developer.md: -------------------------------------------------------------------------------- 1 | ## Quant Trade Developer 2 | ### Parameters 3 | 4 | * Applied: May 4, 2023 5 | * Phone interview: May 23rd, 2023 6 | * Third stage take home exam/group task: June 29, 2023 7 | * Notification of failure: June 30, 2023 8 | 9 | ### Entrance exams 10 | 11 | Exactly the same as described [here](../../2021-22/Tibra/Quant%20Trader%20-%20Junior.md). Though, they did reset the HackerRank entrance exam so that I could take it using my normal HackerRank account, rather than being forced to create a separate account... 12 | 13 | Also: a question (about the personality test) asked to them got no response. 14 | 15 | ### Proceeding to the phone interview 16 | 17 | A few days after finishing the entrance exam, I got this: 18 | 19 |
20 | Hi Leader, 21 | 22 | Congratulations! We're pleased to advise that after reviewing your online testing results, you are progressing to the next stage of our assessment process. This stage is a 30-minute phone interview, for us to get a better understanding of your suitability for the role. 23 | To schedule the interview, please click on the link below and select a suitable time to speak with one of our Talent team members: 24 | 25 | [Schedule an interview] 26 | 27 | Please have a pen and paper handy during the interview, and ensure that your computer can run Microsoft Teams to connect to the meeting. 28 | 29 | Kind regards, 30 | 31 | Tibra Recruitment Team
32 | Tibra Global Services Pty Ltd
33 | www.tibra.com
34 | 108 Lawrence Hargrave Drive, Austinmer NSW 2515, Australia
35 | PO Box 3061, Austinmer NSW 2515, Australia 36 |
37 | 38 | So I didn't fail the entrance exams this time - interesting. I opened the form - there were options from next week. I chose a Tuesday, the second earliest date possible. Note that I'm several hours away from them as I'm GMT +3, so from their perspective I chose a slot towards the end of the day. 39 | 40 | ### The phone interview 41 | 42 | The phone interview was via Teams, camera off on both sides. It started with a discussion on what the role is, and clarifying things such as salary (AUD$ 120,000 per year), visa sponsorship, training and more. Fine to me. Then the brain-teasers: 43 | 44 | * Jim has twice as many sisters as brothers. Jane, Jim's sister, has the same number of brothers as sisters. How many siblings are there? 45 | 46 | Got this fully right. 47 | 48 | * You have a right-angled triangle with perpendicular side lengths of 10 and 15. What is the area of the largest square that fits into the triangle, whose sides are parallel to the perpendicular sides of the triangle. 49 | 50 | This is where I surprisingly screwed up. The problem was that I somehow solved the problem thinking that we were looking for a **rectangle** instead of a square, giving the answer 37.5 instead of 36. What was even stranger was that the recruiter accepted it as if it was correct, telling me to explain and moving on after that! 51 | 52 | After that, there was a brief explanation of what would come next, and then time for my questions. That was it. 53 | 54 | ### Proceeding to the third stage 55 | 56 | After realising the blunder I made with the second question (and frustrated that the recruiter did not point out my mistake to me at any step), I thought that my chances of moving forward was slim. It was hence a surprise when I got to know that I actually managed to move on to the next stage: 57 | 58 |
59 | Hi Leader, 60 | 61 | Thank you for participating in the phone interview. 62 | 63 | I would like to progress you to the next stage being a group strategy task. 64 | 65 | This will take approx. 3.5 hours – 2 hours to work on a data set, 1.5 hours to present your findings to a Tibra technical lead and work on a group task with another candidate. 66 | Would you be available on Thursday 29th June, 3:00pm - 6:30pm AEST for the group task? 67 | 68 | If this time does not work for you, can you please send me through your availability. 69 | 70 | Kind regards, 71 | [recruiter name] 72 |
73 | 74 | OK, this is interesting in many ways. What's in this stage? 75 | 76 |
77 | 78 | You will be sent the data set at 3:00pm AEST. The goal of your research over the 2 hours from 3:00pm AEST, is to explore the data and discover any relationships from the signals to the asset with the intention of trading the asset. Be prepared to present the outcomes of your investigation to [interviewer] and your partner. The exercise that you will do afterwards will be a group exercise, where you will join this meeting at 5:00pm AEST, and [interviewer] will give you the details after the presentation. 79 | 80 | Please ensure you have a jupyter notebook environment with a Python 3 kernel and Teams installed on your device to share your screen. Please ensure that your device is able to share the screen, as on some PCs / Macs this functionality can be temperamental. 81 |
82 | 83 | and 84 | 85 |
86 | Below is some further information in regard to the group task. 87 | 88 | * The goal of the 2 hours is for you to work individually to understand, explore the data and its relationships to discover any relationships from the signals to the asset with the intention of trading the asset. 89 | * One clue that I can give here is that the goal of financial analysis in trading is almost always to gain useful insights about an asset and to predict its behaviour. 90 | * If you have experience with pandas/python analysis this is preferable but not a requirement. 91 | * When you join the meeting you will present your findings, only needs to be brief, no PowerPoint required. 92 | After the presentation our Tibra interviewer will provide you with instructions for the group component that you will work on with the other candidate. 93 |
94 | 95 | So, to summarise, we have 96 | 97 | * an individual data analytics task of two hours, and 98 | * a group task - they seemed to be tight-lipped there. I've never had such a task for an interview before. 99 | 100 | ### The third stage 101 | 102 | This was via Teams. At first, I struggled to join since it wasn't letting me for some reason, but managed to work around it by using the web version. 103 | 104 | * The first part consisted of my being given a dataset (a few hours before it was actually scheduled to start) and asked to find any relationships from the dataset with the intention of trading the asset. Now, the file only contained the stock price and eight signals (without a description on what the signals were), so I had to reason solely on the values (i.e, the trends) when performing the analysis. I more or less did it using just correlations. 105 | * After that, I (and the partner - I was first) had to present their analysis. And [interviewer] seemed to not like the way I used correlations. According to him, he thought that it was a mistake and thought I didn't know what a predictive power function was. Now, I do know that correlations have their limitations, and he correctly pointed out that (for instance) a quadratic model cannot be properly handled using correlations (but can with a predictive power). But I personally didn't agree with the assertion that my usage of correlations was improper - after all, you need a ML model if you take the predictive power route. TLDR; yes predictive power is better, but correlations isn't "useless" 106 | * The partner on the other hand also used correlations, but took a more ML-like approach by showcasing things like PCA. As I suspected, that in itself didn't lead to any useful signals. 107 | * Then came the group task part. It was an extension of the first phase - this time to actually implement a backtesting strategy to find a PnL (profit and loss). I didn't like this section. This is a task that (in my opinion) is best done individually - after all, each person may have their own approaches and you can only choose one (within 40 minutes). Hence it was more of my "assisting" the partner, who did the bulk of the work - I felt that I couldn't showcase what I knew. That being said, my parter was no slouch and was clearly more experienced in ML than I am. 108 | * And then came the time for questions. The questions my partner asked were coincidentally the same as mine, so I didn't have anything extra to ask. 109 | 110 | ### Notification of failure 111 | 112 | Happened the next day. For me, it was a case of my looking at my watch, seeing the first few words, and going back to sleep, in resignation of the fact that I've failed as usual yet again... 113 | 114 |
115 | 116 | Hi Leader, 117 | 118 | Thank you again for your application for our Quant Trader Developer position and for participating in the group strategy task interview.
119 | Unfortunately, on this occasion we will not be progressing you to the next stage as you did not meet the requirements for the role.
120 | It’s a fiercely competitive industry, and we receive around 6,000 applications annually. Ultimately, we offer less than 1% of applicants a position due to the technical demands of the role.
121 | Thank you for the time you have taken for the recruitment process with Tibra, I wish you all the best with your future plans! 122 | 123 | Kind regards,
124 | [recruiter] 125 |
126 | 127 | My prior experience with them has been that they are not receptive to asking feedback. I still decided to try, and as a pleasant surprise, got this: 128 | 129 |
130 | 131 | Hi Leader, 132 | 133 | Thank you for your email.
134 | In terms of feedback, I can provide some improvement points: 135 | * developing a deeper understanding of statistical analysis, modelling and knowledge of the pandas library. 136 | * then as an extension to this focusing on breaking problems down with these in mind. 137 | Hope this helps. 138 | 139 | I would suggest applying again after 12 months. When you reapply, we would have a discussion around what you have worked on during that time and what further experience you have gained through work or further studies. 140 | 141 | It has been great speaking with you and I wish you the best with your future plans. 142 | 143 | Kind regards, 144 | 145 | [name] 146 | 147 |
148 | 149 | Better than nothing, but still rather vague in that they didn't expand on the points mentioned. I tried to get that clarified: 150 | 151 | > That does help, but can you expand on whether I was penalised on the first (i.e, the data analytics part), second (i.e, the group task part) or both? Thanks in advance. 152 | 153 | I got this: 154 | 155 | > Both aspects are taken into consideration. Unfortunately, in this instance there were other candidates (outside of your direct partner) that you were assessed alongside throughout the interview process that demonstrated higher competency in the areas required. 156 | 157 | So, to sum it up: I was incompetent. 158 | 159 | ### Takeaway 160 | 161 | * This is yet another instance of a take-home exam failure, which is something that has continued to elude me. I'm not sure on what more I can do to avoid getting screwed every time I have to take one of these tests, and it's not like I hear others struggle to get past these tests. 162 | * Their Glassdoor page seems to be pretty concerning, with comments on the low salary, poor working hours, "company in decline" and more, going as far as some alleging company pressure to provide positive reviews. In fact, it's the second most concerning set of reviews I've seen, only behind [TPP](../../2021-22/TPP/Graduate%20Software%20Developer.md). They disclosed that the base salary is AU$ 120,000. That's actually pretty good on the surface (when converting to euros for instance) - of course that doesn't take into account cost of living differences and I don't know how well their competitors pay. They also said that they offer relocation assistance and such. However, if the company is really as bad as the Glassdoor reviews say, they (Tibra) have done a good job in masking that from the interviews, because unlike TPP, I didn't get the impression that the company was that bad. In fact, I'd say that they did actually OK - while the lack of a response in the first part was unnecessary - and waiting a month for the take-home exam was rather long - they actually managed to give meaningful - if brief - feedback. That's better than many companies - but then I should note that they refused to provide feedback when I failed in 2020-21. Whether that's because they changed their feedback process since then, or because I managed to progress further in 2023-24, is not something I know. 163 | * I'm still not entirely sure how they seem to be only company that offers visa sponsorship - at least in theory. -------------------------------------------------------------------------------- /Application experiences/readme.md: -------------------------------------------------------------------------------- 1 | # The Applicant Experiences guide 2 | 3 | ### What this does 4 | 5 | Provide a centralised location where users can share and read about interviews and application experiences for various companies, with a write-up design that is geared towards providing the most insight possible for the reader. 6 | 7 | ### The purpose 8 | 9 | * I've seen many people ask repetitive questions on places such as r/CSMajors. While one could argue that it's their (the users asking those questions) responsibility to search on the internet, the fact is that trying to perform a search on the internet is somewhat disorganised. 10 | * More importantly, there needs to be a centralised location that spans many companies. On Reddit, I've gotten many private queries about Maverick Derivatives - which isn't a company I thought a lot would be asking. This is my attempt to help users. 11 | * Most "mainstream" locations where people would ordinarily put write-ups (such as Reddit and LeetCode) lack the depth and insight that I am trying to achieve in this repository (partially because these sites are designed for "short" writeups). Where possible, official interview feedback and data is available. 12 | 13 | ### Notes and rules 14 | 15 | * There is no restriction in location - initially it may seem like the roles are biased towards Europe, but that's because I applied for roles there. 16 | * Dates should include the month name in full. 17 | * Mention the location and date, putting them in the right year group (which is by recruiting season, so a role for September 2021 goes in the 2020-21 category) 18 | * Do not mention applications still in progress. 19 | * Successful applications **are** allowed. The status isn't as important as the depth and insightful-ness - this is what differentiates this repository from more "mainstream" places such as the average write-up on Reddit or LeetCode. 20 | 21 | Please include as much detail into your experience as possible - I'm aiming for something in the level of [this one](2021-22/Microsoft/UK%20New%20Grad.md) or [this one](2021-22/Facebook/Software%20Engineer,%20University%20Grad.md), and I would prefer a similar style to be used, including the presence of the major headings. 22 | 23 | _Online assessments_ 24 | 25 | For instance, include all details about the online examination (if any). When doing so, please indicate the difficulty of the questions corresponding to LeetCode levels. If the question was directly recycled from LeetCode, use its indication, otherwise give a good approximation. When doing so, 26 | 27 | * a LeetCode Easy should not require knowledge of optimisation techniques that are not immediately obvious and are normally "gimmes" 28 | * a LeetCode Medium may include optimisation techniques, including but not limited to greedy and DP. A 1-D DP is usually a Medium, a 2-D DP is on the upper end of Medium and can also be a Hard. 29 | * a LeetCode Hard may make use of obscure optimisation techniques (eg ask for Tarjan's algorithm) or be otherwise extremely hard to solve (this should not be a "just my impression" case!), such as requiring 3-D DP or higher. 30 | 31 | A reminder that for questions from LeetCode, their difficulty estimation should be used and none else in general. Feel free to use terms such as "borderline" if that would help. 32 | 33 | _Disclosing interview questions_ 34 | 35 | This is permitted **as long** as you are not prohibited from doing so in any way. For instance, if you have signed a NDA or the company has explictly asked you not to share them, you may not share them here either. 36 | 37 | Questions from online assessments may **not** be shared in any circumstance. 38 | 39 | _Giving names of recruiters or interviewers_ 40 | 41 | It was planed that this would be allowed, since I wanted to make the write-up as complete as possible. However, during private testing, a concern was raised that this could cause people to be uncomfortable, and indeed this does not appear to be allowed by Reddit at least. I considered the possibility of allowing only first names, but then it was very easy to uniquely identify the person through a simple search on the internet. Hence I've decided to disallow giving names of anyone that isn't the applicant as a result (unless the name is of a relatively high rank as in [Visa](2021-22/Visa/Software%20Engineering%20and%20Testing%20Graduate.md)). Not my choice really; I just didn't want to run into any unintended trouble. Using placeholders such as (recruiter) in-place is fine. 42 | 43 | _Experiences that do not go here_ 44 | 45 | Perfectly generic failures (that is, you got kicked out right after application). There needs to be _something_ beyond "I applied and failed". -------------------------------------------------------------------------------- /Getting the feedback through GDPR.md: -------------------------------------------------------------------------------- 1 | # Getting feedback through GDPR 2 | 3 | ### Introduction 4 | 5 | Historically, if a company didn't give feedback or test scores or whatever, there was little you could do. The GDPR changed it, but I have seen little documentation on how to actually use it to your advantage. This guide attempts to do so. 6 | 7 | ### The potential benefits 8 | 9 | Suppose you got rejected from a company. What kind of information could you want? 10 | 11 | * If you did an entrance exam, it would be nice to see what mark you got - because that gives a good indication on whether the failure was caused _because_ you did poorly in the exam - or whether it was something else. 12 | * Also, it would be very useful to see if you could get the questions (and answers) you did in the test - as that would be valuable preparation material should you decide to apply again. 13 | * Now suppose you did an interview, and the company did not respond, or refused to provide feedback. Clearly, they had _some_ notes on the interview, and it would be useful to get hold of them. 14 | 15 | What could the GDPR do in these cases? Here are a few positive examples: 16 | 17 | * [SIG](Application%20experiences/2021-22/SIG/Quantitative%20Trader%20-%202022%20Programme.md) provided a copy of the entrance exam, answers and statistical data on my performance, and some _amazing_ interview notes which I found very useful in understanding what went wrong. 18 | * [Facebook](Application%20experiences/2021-22/Facebook/Software%20Engineer,%20University%20Grad.md) provided interview feedback (despite otherwise having a policy not to) - which was similarly very insightful. 19 | * Goldman Sachs provided the pass mark for the HackerRank exam, and also implicitly provided valuable information into how their exams are scored. This has been incorporated into the [online assessment guide](Online%20Assessments.md). 20 | * JP Morgan implicitly admitted that they did not watch my HireVue (one-way video) responses in the last two years that I applied, despite my getting 100% and 90% in the entrance examination. This is important because otherwise it would be easy to assume that the rejection was because of a poor HireVue performance. 21 | 22 | It's not perfect however: 23 | 24 | * [Microsoft](Application%20experiences/2021-22/Microsoft/UK%20New%20Grad.md) claimed that I never interviewed with them (which was clearly false) 25 | * DRW told that my entrance exam mark was not "personal information" (i.e, confidential) - which makes little sense but I'm not a lawyer 26 | 27 | But from my experience, one's more likely to get useful information than not. 28 | 29 | ### Criteria 30 | 31 | You must be applying for a role in the EU (including UK). It does _not_ matter if you are living outside the EU. What has not been tested however is applying for a role outside the EU as an EU resident and requesting GDPR on that non-EU role. Note that UK roles/residents are eligible, as the [UK GDPR](https://ico.org.uk/for-organisations/dp-at-the-end-of-the-transition-period/data-protection-and-the-eu-in-detail/the-uk-gdpr/) is similar to the EU GDPR. 32 | 33 | The [CCPA](https://oag.ca.gov/privacy/ccpa) is similar (but has not been tested), except that it appears that only those resident in California can make use of this provision. 34 | ### The process 35 | 36 | The first step is to find the right email address. This can _usually_ be found by going to a company's privacy policy page and looking at the EU GDPR section - specifically many companies have an email address that points to their DPO (data protection officer) or similar. You then need to send an email to them asking for your personal information - many of the links above included the templates I used when making use of GDPR. In rare cases you may be asked to submit verification documentation (like a copy of your passport) - however this is usually not the case. 37 | 38 | Then you need to wait. Legally they need to respond to your request within a month - but in practice I've had response times from one day to about 45 days. Some companies may also choose to call you. 39 | 40 | Finally, you'll usually get the data. I've had that given in many different ways - some will email/text you an access code - while others may use an internal "secure email" service which you may be asked to register. There'll also be some legalese, including what you got and what they withheld (which is usually things such as the names and the emails of the recruiters that worked on the application). The links above provide an indication of what you _could_ get. -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Online assessments and interviews 2 | The guide to online assessments and interviews. Feedback and contributions are welcome and appreciated. 3 | 4 | This repository consists of two sections: 5 | 6 | * A guide into online assessments (and getting feedback using the GDPR). I would also like to see guides for other sections such as interviews, but do not have sufficient experience to write one myself. Contribution from others would be greatly appreciated. 7 | * A section giving (insightful) application experiences into various companies by year (as long as it was not a case of getting rejected after application with nothing else), with as much raw detail provided as possible. 8 | 9 | ### Contributing 10 | 11 | Please use GitHub issues to contribute to this repository, either by pull requests or by simply creating a new issue. For regular discussion, GitHub Discussion is also available. 12 | 13 | ### Licensing 14 | 15 | **This repository is _not_ designed to be forked.** Please do not fork this repository unless you intend to contribute; star or watch this repository instead. Reasoning for this is given below. 16 | 17 | This repository is, in general, copyrighted (older versions were under a somewhat more permissive licence; see history for that). In particular, modifications of this repository may **not** be shared by default. This may sound restrictive, but the intention is to prevent the interviews portion (which are contributed by users, including myself) from being inappropriately modified, and to encourage contributing to a central repository instead of creating potentially disjoint forks. The exception is if you plan to contribute using GitHub issues; since GitHub can automatically create forks during the process, any (disjoint) forks as part of that would be fine. Please do let me know if exceptions are needed. 18 | 19 | ### Need something more? 20 | 21 | I don't anticipate this to be common, but if you require something more (such as some sort of specialised or private help/chat), simply let me know via email (leader-board at outlook com). -------------------------------------------------------------------------------- /media/Flow_Traders_Example_Math_Test_2020.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/Flow_Traders_Example_Math_Test_2020.pdf -------------------------------------------------------------------------------- /media/General-Coding-Skills-Evaluation-Framework-CodeSignal-Skills-Evaluation-Lab-Short.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/General-Coding-Skills-Evaluation-Framework-CodeSignal-Skills-Evaluation-Lab-Short.pdf -------------------------------------------------------------------------------- /media/Practice-Math-Test_4.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/Practice-Math-Test_4.pdf -------------------------------------------------------------------------------- /media/akuna1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/akuna1.png -------------------------------------------------------------------------------- /media/bloomberg1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/bloomberg1.png -------------------------------------------------------------------------------- /media/bloomberg2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/bloomberg2.png -------------------------------------------------------------------------------- /media/bloomberg3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/bloomberg3.png -------------------------------------------------------------------------------- /media/bloomberg4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/bloomberg4.png -------------------------------------------------------------------------------- /media/facebook1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/facebook1.png -------------------------------------------------------------------------------- /media/facebook2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/facebook2.png -------------------------------------------------------------------------------- /media/flow_traders_pt1_excel.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/flow_traders_pt1_excel.xlsx -------------------------------------------------------------------------------- /media/general-coding-assessment-framework.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/general-coding-assessment-framework.pdf -------------------------------------------------------------------------------- /media/image1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/image1.png -------------------------------------------------------------------------------- /media/image10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/image10.png -------------------------------------------------------------------------------- /media/image11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/image11.png -------------------------------------------------------------------------------- /media/image2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/image2.png -------------------------------------------------------------------------------- /media/image3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/image3.png -------------------------------------------------------------------------------- /media/image4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/image4.png -------------------------------------------------------------------------------- /media/image5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/image5.png -------------------------------------------------------------------------------- /media/image6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/image6.png -------------------------------------------------------------------------------- /media/image7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/image7.png -------------------------------------------------------------------------------- /media/image8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/image8.png -------------------------------------------------------------------------------- /media/image9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/image9.png -------------------------------------------------------------------------------- /media/javascript-core-assessment-framework.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/javascript-core-assessment-framework.pdf -------------------------------------------------------------------------------- /media/maven1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/maven1.png -------------------------------------------------------------------------------- /media/microsoft1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/microsoft1.png -------------------------------------------------------------------------------- /media/microsoft2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/microsoft2.png -------------------------------------------------------------------------------- /media/microsoft[2]1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/microsoft[2]1.png -------------------------------------------------------------------------------- /media/microsoft[2]2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/microsoft[2]2.pdf -------------------------------------------------------------------------------- /media/microsoft[2]3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/microsoft[2]3.pdf -------------------------------------------------------------------------------- /media/mustard1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/mustard1.jpg -------------------------------------------------------------------------------- /media/mustard2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/mustard2.png -------------------------------------------------------------------------------- /media/mustard3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/mustard3.png -------------------------------------------------------------------------------- /media/mustard4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/mustard4.png -------------------------------------------------------------------------------- /media/readme.md: -------------------------------------------------------------------------------- 1 | ## Media 2 | 3 | This folder contains all the images and other assets that are referenced elsewhere in this repository. -------------------------------------------------------------------------------- /media/readme1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/readme1.png -------------------------------------------------------------------------------- /media/readme2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/readme2.png -------------------------------------------------------------------------------- /media/rokos1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/rokos1.pdf -------------------------------------------------------------------------------- /media/rokos2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/rokos2.pdf -------------------------------------------------------------------------------- /media/rokos3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/rokos3.png -------------------------------------------------------------------------------- /media/rokos4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/rokos4.png -------------------------------------------------------------------------------- /media/samsung1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/samsung1.jpg -------------------------------------------------------------------------------- /media/samsung2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/samsung2.jpg -------------------------------------------------------------------------------- /media/samsung3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/samsung3.jpg -------------------------------------------------------------------------------- /media/samsung4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/samsung4.jpg -------------------------------------------------------------------------------- /media/samsung5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/samsung5.jpg -------------------------------------------------------------------------------- /media/samsung6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/samsung6.jpg -------------------------------------------------------------------------------- /media/samsung7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/samsung7.jpg -------------------------------------------------------------------------------- /media/sig1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/sig1.png -------------------------------------------------------------------------------- /media/sig2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/sig2.png -------------------------------------------------------------------------------- /media/sig3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/sig3.png -------------------------------------------------------------------------------- /media/sig4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/sig4.png -------------------------------------------------------------------------------- /media/sig5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/sig5.png -------------------------------------------------------------------------------- /media/sig6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/sig6.png -------------------------------------------------------------------------------- /media/sig7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/sig7.png -------------------------------------------------------------------------------- /media/tibra1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tibra1.png -------------------------------------------------------------------------------- /media/tibra2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tibra2.png -------------------------------------------------------------------------------- /media/tpp1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp1.png -------------------------------------------------------------------------------- /media/tpp10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp10.png -------------------------------------------------------------------------------- /media/tpp11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp11.jpg -------------------------------------------------------------------------------- /media/tpp12.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp12.jpg -------------------------------------------------------------------------------- /media/tpp13.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp13.jpg -------------------------------------------------------------------------------- /media/tpp14.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp14.jpg -------------------------------------------------------------------------------- /media/tpp15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp15.png -------------------------------------------------------------------------------- /media/tpp16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp16.png -------------------------------------------------------------------------------- /media/tpp17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp17.png -------------------------------------------------------------------------------- /media/tpp18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp18.png -------------------------------------------------------------------------------- /media/tpp19.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp19.png -------------------------------------------------------------------------------- /media/tpp2.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp2.mp3 -------------------------------------------------------------------------------- /media/tpp3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp3.jpg -------------------------------------------------------------------------------- /media/tpp4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp4.jpg -------------------------------------------------------------------------------- /media/tpp5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp5.jpg -------------------------------------------------------------------------------- /media/tpp6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp6.png -------------------------------------------------------------------------------- /media/tpp7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp7.png -------------------------------------------------------------------------------- /media/tpp8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp8.jpg -------------------------------------------------------------------------------- /media/tpp9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/tpp9.png -------------------------------------------------------------------------------- /media/visa1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/visa1.png -------------------------------------------------------------------------------- /media/visa2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leader-board/OA-and-Interviews/e23b28bda8d44d46c57adbf7e1b5c39731f509b3/media/visa2.png --------------------------------------------------------------------------------