Thinking out loud, here’s one idea for an LLM-assisted interview:
- Spin up a Digital Ocean droplet
- Add the candidate’s SSH key
- Have them implement a basic API. It must be publicly accessible.
- Connect the API to a database. Add more features.
- Set up a basic deployment pipeline. Could be as simple as script that copies the code from your local machine to the server.
Anything would be fair game. The goal would be to see how the candidate converses with the LLM, how they handle unexpected changes, and how they make decisions.
For the time being, I’ve banned LLMs in my interviews.
I want to see how the candidate reasons about code. So I try to ask practical questions and treat them like pairing sessions.
- Given a broke piece of code, can you find the bug and get it working?
- Implement a basic password generator, similar to 1Password (with optional characters and symbols)
If you can reason about code without an LLM, then you’ll do even better with an LLM. At least, that’s my theory.
I never ask trick questions. I never pull from Leetcode. I hardly care about time complexity. Just show me you can reason about code. And if you make some mistakes, I won’t judge you.
I’m trying to be as fair as possible.
I do understand that LLMs are part of our lives now. So I’m trying to explore ways to integrate them into the interview. But I need more time to ponder.
His book, Rebuilding Rails, had a huge impact on me, especially early in my career (when I started learning Rails). Such a great teacher. He encouraged me to be curious, dig deeply, and to understand my tools.
Such a badass developer. And such a kind and genuine person.
I’ve been using this for the past few months, and for the most part, I like it. I appreciate that it’s all configured with a single file (no GUI).
One issue: If an app uses native Mac tabs, Aerospace treats each tab as a window, which completely breaks the full screen functionality. Alacritty is one example. It’s really odd.
The Sofle has been decent for me. I’m not the biggest fan of thumb key positions (especially the outer one), but I’m getting used to them.
There are only two thumb keys per side. I’ve had to get a bit creative with my layout. One trick I’ve discovered is Mod-Tap. This lets me use my space bar as a layer key (when held), or a normal “space” when tapped. Two functions on a single key. Awesome.
I’ve also been reading this person’s blog to improve my symbol layer and vim navigation (I’m tempted to try the Engram layout, but I’ll stick with Colemak for now):
https://sunaku.github.io/engram-keyboard-layout.html
Thanks for the video. I’ll definitely try it out. In my original post, I should’ve emphasized that I’ve also been focusing on strengthening/mobilizing my wrists. It’s only been a month or two of concentrated effort, but I think they’re improving a bit.
This past month, I’ve been reevaluating my dev environment and workflow. My goals are to reduce RSI, be more efficient, as well as learn all my tools as deeply as possible. And have fun!
- I’ve ditched VSCode and gone all-in on NeoVim. I’ve spent a bunch of time watching Primeagen, etc., tweaking my vid config and learning how to navigate as efficiently as possible.
- Switched from QWERTY to Colemak-DH to hopefully reduce RSI. I’m at about 70wpm with decent accuracy after 4 weeks. My QWERTY skills are gone. I like Colemak, but we’ll see how I feel in another month or two.
- Finished my custom hot swappable Sofle keyboard, and spent many hours customizing the layout. I think I’m pretty close to feeling comfortable. I’m using home row mods, which I love. Currently using Kailh box whites (clicky). Might switch to Gateron Brown Pros.
- Been going through a “Build your own git” course, to understand git as deeply as possible.
There was a 3 month period where I had nothing to do.
I was supposed write firmware for a piece of hardware, but the hardware was broken and wouldn’t even turn on. I was told to wait for the electrical engineers to fix it.
I sat in the lab all day, for 8 hours a day, with no internet access (it was forbidden), pretending to write firmware that I couldn’t test, with no direction on what I should be doing. There was no simulator, no tests, no guidance.
In that time, I would practice my own Leetcode problems in preparation for other jobs. All day long.
About two weeks before I left the company, I received my security clearance. That’s when I realized… they were just killing time until I had my clearance.
All of a sudden, the flood gates were opened, and I learned about a really interesting project. Not interesting enough to keep me though ;)
Six years later, I’ve 3x’d my compensation. And I love my job now (web development).
A popular theme in today’s productivity culture is “waking up early.” It’s considered a sign of discipline to wake up at 5am.
5am is reasonable... if you fall asleep at 8:30 or 9 PM.
I wish we’d stop emphasizing early wake-up times, and start emphasizing reasonable bed times. It takes just as much discipline, especially with my phone so easily accessible and the TV so easy to binge.
- Spin up a Digital Ocean droplet
- Add the candidate’s SSH key
- Have them implement a basic API. It must be publicly accessible.
- Connect the API to a database. Add more features.
- Set up a basic deployment pipeline. Could be as simple as script that copies the code from your local machine to the server.
Anything would be fair game. The goal would be to see how the candidate converses with the LLM, how they handle unexpected changes, and how they make decisions.
Just a thought.