Jane Street, Lakera and a 60K Youtube Channel. Meet Vaclav.
This ETHZ student began coding at 8. At 14, he started competitive programming. Before uni, he interned at Blue Vision Labs (acq. by Lyft). Later, he interned at Jane Street, and finally joined Lakera
Vaclav Volhejn
Studies: MSc@ETHZ ('22), BSc@Charles University ('20) Experiences: Blue Vision Labs (acq. by Lyft), Jane Street, Bini, Lakera Cool projects: Impromptu.fun, Polylog (60K subscribers), TikTok Hobbies: Game Dev, Competitive Programming, Music Links: LinkedIn, GitHub
Vaclav’s early start to coding
When did you discover Computer Science?
“I started programming when I was like 8 or 9. There was a programming language called Baltik, where you move around blocks, and a wizard that you can make do stuff, and then conditions. This was made by a Czech guy, I don’t think it’s very internationally known. I guess Scratch is the better alternative nowadays.”
What was the first proper language you learnt?
“I began learning Java when I was around 12, I remember hating it because I could have done it way faster with Baltik, so that was a tough transition.
The way I started is my parents signed me up for a kids programming course for Java. My dad, he's not a software engineer, but he works in tech and studied cybernetics in the 80s. So through this push, I continued programming, and I’ve been doing that ever since. It’s interesting though, had they signed me up for like maths or physics, maybe I would be doing that now. Who knows?”
You were one of the top competitive programmers at ICPC, how did you discover this passion?
Editor note: ICPC is an international algorithmic programming contest.
“When I was around 14 or 15, my dad found this correspondence seminar. It’s a format which is pretty popular in Czechia. And the way it works is you get some problems that you solve at home, and then originally you would mail your solutions in. Nowadays, of course, you just submit it through a web interface. They had some problems where you would just write algorithms on paper, so it was more theoretical. And that was my introduction to competitive programming.
What they did really well is that they had these camps where they invite people who did relatively well in the seminar. It was a pretty small thing, they would invite the first 30 people of out maybe a 100. And then you would spend a week with these fellow nerds doing algorithms and playing some games.
I remember these programmers would always try to break the rules of any games that we would play and try to find edge cases, which is a very programmer thing to do haha. There was this golf game, where you had a ball and were supposed to get it somewhere with sticks. And people were like, ‘if the ball lands on a person, and we carry the person around, I guess that doesn’t technically count as another stroke’. And that’s the sort of stuff that they would always come up with.
But I think that was really cool to see, because competitive programming is pretty niche. Before that, I didn't really know anyone who also enjoyed these types of problems. And then you get to meet a whole bunch of people who share the same hobbies. So that really motivated me to keep going with that.“
Interning at Blue Vision Labs (acquired by Lyft)
While at high school, you interned at Blue Vision Labs, a cutting-edge computer vision company that got acquired by Lyft. Tell me about it.
“Yeah, I got this via competitive programming essentially. There was a guy I sort of knew, who was 5 years older. And I think mainly through his referral I got into Blue Vision Labs. Now it no longer exists because it was bought by Lyft. And then the Lyft self-driving division got bought by Toyota.
And so the product was localization, for augmented reality. You have a phone and you point your camera to somewhere in a city, and then it can tell with centimeter precision where the camera is.
And the way they did it was by collecting big data sets from phone data. So they paid Uber drivers to install a phone in their car. And as they were driving around the city, they would just collect video footage. And then from this, they built these 3D point cloud maps that were then used for localization. So it was simultaneous localization and mapping. Scaling it up to cities was the main technical challenge there.”
You had a job at an amazing company before uni, you could have just continued full-time. So why did you decide to go to Charles University?
“I was kind of considering that. At the time I thought, ‘oh, I know everything there is to know about programming’. Which is kind of funny, because looking back, that's not at all true. And now I feel I know less than I thought before, because after uni, you sort of know about all of these things that you don't know. The horizon of knowledge is just bigger.
But yeah, I could have gone full-time, but definitely don't regret going to university. There’s so many fundamentals that I wouldn't have learned otherwise. And obviously, all the people you meet along the way that you wouldn't have got to do otherwise.”
Bachelors at Charles University
Why did you do 233 credits for your Bachelor’s?
“In my first year, I was still not sure if I wanted to go to university. So I ended up enrolling in two programs, I did computer science and philosophy. I thought the first year would be pretty easy, which it was, since in the first year they start from the basics because some people come in with no prior knowledge.
But pretty quickly everyone levels out and then you reach things that actually do take a lot of time. So a lot of these extra credits were from taking philosophy in that first year and running between the two buildings to catch the classes.”
What sort of a student were you? Were you studying? Partying? Working on side-projects?
“That’s a good question. I think it’s changed over time. During high school, I didn’t really care about grades since the subjects didn’t interest me, so I ended up doing competitive programming and also sank too much time into League Of Legends. I don’t know how many hours I spent, but I was like Diamond II towards the end.
At Charles University, I did try to get good grades though. It’s a shame though, compared to ETHZ there’s way fewer student clubs and extracurricular activities - most people go to lectures and that’s about it. So in the first year, I was still doing some competitive programming. An ongoing hobby of mine is also music in various forms - I was actually in two bands at the time, one with my technical friends and the second with my philosophy friends, which was pretty fun. I would play bass guitar, and it’s still one of my side hobbies nowadays.”
Interning at Jane Street
How did you get into Jane Street?
“I remember that year because, before that, I interned at Blue Vision Labs and then a small company in Prague and I wanted to go somewhere bigger. I was applying to Google and Jane Street and then maybe a few other places.
I don’t know how I knew about Jane Street, probably from the branding they do at maths competitions. The interviews went well, and the on-site interview was super cool because they flew me out and I could pick whatever flight and hotel I wanted.
At the same time, with Google, I was still in the interviewing process, but it looked promising. I got the offer from Jane Street though, so I had to decide soon. After I talked to a few people, they said Jane Street was harder to get into so I ended up going for that.
The competitive programming helped a lot for sure with the interviews. I feel it’s kind of unfair even, since you practice so hard to solve these small self-contained problems, which makes you good at interviewing. But that doesn’t necessarily mean you’re going to function well in a bigger project.”
How was the experience at Jane Street?
“It was really interesting, I’ve never been in a similar company. First of all, they were in the walkie-talkie building on the 30th floor, which was super cool. They had the internship set up so you have two halves/projects. During the first half, I was sitting close to the window that was looking towards Tower Bridge, and there was even a website where you could see which ships were passing and when the bridge was opening.
The first project was within the software engineering for the traders, so you sort of sit close to the trading desks, and you have people with like six monitors and a bunch of plots on them. There’s also Bloomberg terminals, everyone is shouting and they also had sound effects for different market events - it felt super chaotic and unlike any other place I’ve been, so it was pretty cool.
Technically it was also really interesting because they use OCaml which no one else really uses, so you spend the first week learning it. Learning OCaml wasn’t too hard, but it was the biggest codebase I’ve ever contributed to, so there’s significantly more overhead of just reading the code and trying to figure out what the things do and how they interact. So you just end up trying to figure out how the whole thing works before you even write a single line of code, so that was a new thing to learn.
In the second half I was on some compliance team and the project was about moving data stored in files into a database, so that was significantly less fun.
So yeah, first half was really cool and I also learned a lot about finance, like knowing that it’s not a zero-sum game, etc.”
Afterwards you never really did any big tech internships, you instead went for smaller experiences like IST Austria and Bini, why was this?
“Yeah I went to IST Austria for my bachelor thesis. A few people from Charles University had gone there before, I knew that they liked it, and it was pretty close, so I went for that.
And for Bini, I did actually want to go to big tech, because I hadn’t done that before and Jane Street wasn’t really big tech. So I thought it would be an interesting experience to at least try out, because I wanted to try as many different sort of work before setting on one after I finished studying.
But I started applying too late and then didn’t get into any big tech positions, because, you know, for summer internships you have to apply really early.”
What about Bini? Why did you get this internship instead then?
“So Bini was actually quite bad, the way I found it was my girlfriend at the time wanted to intern in Berlin, so I googled ‘Berlin Start-up jobs’ and on the site (berlinstartupjobs.com 😅) I found the position for Bini. But yeah that was an instance of me not doing enough research on the startup.
But so what they were doing was a competitor to Amazon Go - it’s those stores where you take stuff and there’s cameras and it figures out and charges you automatically. It was pretty funny because they were like, ‘oh read this book Zero to One from Peter Thiel’, where the idea is you should do something that no one has ever done. And their novel idea was to do Amazon Go, but in Europe.
And then I arrived there and it turns out that, well, first of all, I didn’t know, but they were not funded. It was just going out of the founders’ pockets, which was something pretty obvious to ask, but I didn’t at the time. So that wasn’t great.
And then yeah, I was the computer vision intern, so I’m supposed to help them build the system. But it basically turns out there was barely any system when I joined. So when investors came, the CEO would bring them to the demo area in the office with a few cameras mounted. He would take out his phone and grab a milk from a shelf, and on the app, it showed he grabbed a milk. And then he put it back and it would disappear. But as I mentioned, there was no system. And the way this worked was another guy was watching the video streams online, and then he was inputting commands in the web interface that would change what appeared in the app.
So towards the end of the internship, we had some sort of computer vision system, which was like 90% built by me. And of course it was very far from being anything production ready, but there was a pipeline of, we detect some objects and then we do some tracking of these objects across time. And then we project it into 3D space and we detect pick-up and put-back events. It was very brittle and didn't work very well, but it was also interesting to try out all of these computer vision techniques that I hadn't worked with. And I also had to architect the whole thing myself. But also, as you can tell, it wasn't going very well.
So that was a cautionary tale of like, there are some really bad startups out there. And this was one of them. So my advice would definitely be: do a bit of research beforehand, make sure they’re well-funded.”
Moving to ETHZ for the Master’s
After Charles you came to ETHZ, how did you choose that?
“Yeah, so for my Master's, I applied to a few places: ETH, Cambridge, Oxford, Imperial. I didn't get into Cambridge, I didn't get into Oxford. And then it was a choice between Imperial and ETH. And for ETH, I got the ESOP scholarship. So it was like, either I'm going to pay a shit ton of money to be at Imperial and have to survive somehow, or I'm going to get paid for going to ETH. So ultimately it was the scholarship that decided it.”
How was ETHZ different than Charles?
“I think, to be honest, it's sort of better in almost every respect. Definitely the quality of research that's done at ETH, of course, because there's big names and research labs that are doing really cutting edge stuff. And Charles University is only now catching up on modern machine learning.
I think Charles University was good for maths and combinatorics and discrete stuff. Since these fundamentals don't really change that much. But when it comes to staying on top of ML and AI, it wasn't really there. At Charles University, you basically have one lab that does modern ML-related stuff. And then at ETH it’s like half of the labs or more. That’s crazy, right?“
What was your favourite course at ETH?
“I took the ML major and the theoretical CS minor. Course-wise I really liked Advanced Algorithms, probably because of my competitive programming days.
Back then the Advanced Algorithms course was taught by Mohsen Ghaffari, he’s now at MIT. But yeah it was a really good course, it was a tough one but I learned so much, and it was very well taught. Also the exam is pretty open-ended, similar to competitive programming.”
Some cool side projects
What's Polylog, why did you start the YouTube channel and how did you get 60K subscribers?"
“So Polylog is something I started with my friend, his name is also Vaclav and he is a PhD student in theoretical CS at ETH. We knew each other from competitive programming. Our first video we made for 3blue1brown's competition in making math explainer videos called Summer of Math Exposition.
CS education is something that I was always interested in and this was a good opportunity to start doing that more seriously. So together we made the first video for the contest and decided to keep going even afterwards, and then one or two of the videos got blessed by the YouTube algorithm and that got us most of our following.
It's generally Vaclav as the theoretical CS expert who comes up with the topics and writes the script. Then I help edit it and I do the voiceovers. The animations were done by a bunch of different people over time, I'm actually working on animating the upcoming video because nobody else has time. Shoutouts to Richard Hladík and Filip Hlásek as well for helping with the channel.“
You’ve also started posting to TikTok recently, what’s your motivation there?
“So I really like working on Polylog but I also wanted a place to do videos that'd feel out of place on that channel. Mainly I wanted to showcase my side projects, usually small silly but interesting coding things that are hard to promote otherwise. TikTok is a really low-pressure environment to do that, where you can just create a quick demo of something, show it to the world and see if people like it or not. I'm planning to demo my future side projects there and then probably also make another YouTube channel to do longer, more in-depth videos about these projects.”
Go follow Vaclav on TikTok
Joining Lakera, a leading AI security start-up in Zurich
Tell me about Gandalf. How did it start and how did you get to 500K users and over 30 million prompts?
“We had a hackathon at Lakera and I had read a blog post about prompt injection. And the original idea was that we would try out a couple of attacks and a couple of defenses, and then evaluate them against each other. And that's what we did during the hackathon with a few other people from Lakera: Max, Janet, and Mateo.
And then towards the end of it, I thought, ‘we have a bit of time, we could turn this into a web app’.
So then I made it a web app where you’d select the defender and then you’d try to beat it. Later we thought of the idea of turning it into a game. So we got rid of the dropdown menu to select the defender and instead we ordered the defenders by difficulty to form levels. And based on the initial feedback, we were like, ‘we could make it public’, maybe people would like it.
So I texted Mateo about it. And he was like, yeah, let's do it. So then we built the prototype web app. We worked on it for two weeks more or less, and then we published it. And we said, we're going to give t-shirts to the first 10 or 25 people who solve it.
We left it running for a few days and we had a dashboard to monitor the traffic. Then David posted about it on his LinkedIn and that gave us a traffic spike. I think the day after that, someone picked up on it and posted it to Hacker News, where it reached the front page. And on that day we had about 10 prompts being submitted every second, which was crazy.
And I remember, I came into the office and Max was already there. And he was like, ‘yeah, we reached the Hacker News front page and things are going crazy’. And the issue was that we were getting so many prompts that we were getting rate-limited by OpenAI.
So what Max did was that he asked everybody in the company for their OpenAI account and randomized which account would get each request. So it was a super hacky quick thing that alleviated the rate limiting issues. After this Hacker News thing, Gandalf just spread through network effect. And yeah, now we have 30 million prompts or something like that. It kind of went bonkers. “
Try out Gandalf
Vaclav currently works at Lakera, one of the world’s top AI security start-ups (based in Zurich and San Francisco). They built Gandalf, a game where you have to steal a password from a GPT.
Some words of wisdom
What’s some advice you would give yourself if you were just starting off studies again?
“I always had this fear of getting into new fields that I knew nothing about, such as making YouTube videos, or competitive programming (initially). You feel like ‘oh, these people are the experts, they’re so knowledgeable and wise, and I’m so far away from that’. But then as you learn more about the field, you sort of realize that the experts are less far away than you think. And that’s an experience that I’ve had repeatedly across different fields, and somehow that feels really motivating.”
Rounding off
Hey, hope you liked this edition! More posts are coming, here’s some ways you can be involved!
Join the Discord
We also have a discord, where you’ll be able to directly interact with the guests and ask questions! Feel free to join here:
What do you think of this post?
Would love to have your feedback, please vote in these polls 👇
Thanks for reading!
Arnie :)