An assortment of topics and thoughts that might be helpful for interviews and resumes, etc. <> = Palantir = I interviewed with Palantir in early 2019. Not successful, but I got a free trip to San Francisco for what I guess was a final round of interviews! These aren't all questions I was asked, they're questions that I prepared for. There were about 4-5 phone/zoom interviews in total before I got asked to go to San Francisco. The recruitment team were very communicative the whole way through, lots of emails and calendar scheduling, and could do a lot of the talking and question-answering before passing me to the people inside that'd do the real interviewing. == Questions to ask them in the interview == * Do you use Slack? * How noisy are people in the office? * Are there breakout spaces for conversations and phonecalls? * What's the on-call roster like? * Can you talk about customers that you've worked with? Have you ever personally felt a moral dilemma about your work? How do you compartmentalise yourself vs. the company? * What are people's work hours like? And how flexible? * Can you talk about the direction the company wants to take, from the perspective of SRE team? Does the team work on "products" as in capabilities? What does Palantir want to build? * It's reported that Palantir has never reported a profit? What are your thoughts on that, and do you have a sense of where the company is investing money, beyond paying for salaries and infrastructure? * What's Palantir's approach to data security and mitigating abuse, either from customer's inner people, or Palantir staff? * Use of personal devices at Palantir? Choice of workstation? Physical environment? == About the hiring process == * https://www.palantir.com/getting-hired/the-phone-interview/ * A big tech question * Talk about problems you've solved * "Palantir in the Anti-Money Laundering Space" is a damn cool video * This presentation about Dynamic Ontology is interesting, covers what I was thinking of with graph DB usage == Why Palantir? == Really exciting problems to solve! I'm interested in having breadth of systems to learn and deal with. == Stuff you'd like to learn or play with == * Networking at scale, so far it's mostly been theoretical * Would be good to have "ownership" of something again * Security, partly policy and partly applied * Dev in new languages, Haskell and Rust perhaps? * AI * Graph DB, to help me organise data in my head and find links, help remember stuff == Stuff you've made == * UMAD * QQC translation tooling == Pain points in current role == * Lack of well defined workflows * Difficult to make changes because you can't touch a lot of stuff * Hard to improve things due to scale, and lack of well-defined interfaces, stuff is too tightly coupled == What I've learnt at my current job == People. People are a challenge. * How to respectfully address or confront someone * Checking in on where stuff is at * Managing expectations and comms - keep people informed, deal with email, because we don't have integrated comms and work management * Difficult to show off something PoC casually == Stuff you do in your spare time == * Travel to Japan * I went hiking recently * Reading some sci-fi recently * Photography * A bit of languages * Military stuff, firearms and history * D&D == What other roles have you been exploring and why not those ones == * DevOps engineer: research and deploy new apps/systems. More cloud and containers * Forward Deployed Software Engineer: more dev-focused, I don't have that much breadth of languages. Not available to travel that much == Talk about something deeply technical you've done == === LD_PRELOAD fun === At Dept of Education. Hack the On2/Flix media encoder to transfer the software licence, when the original company is defunct. Dig into the code and hijack the call where it gets the MAC address and hostname, LD_PRELOAD fun, etc. That was cool because I learnt a bit about deeper system internals, and got to pay off some crappy tech debt. But that's nothing compared to starboard... === SMFT === At Dept of Education. SMFT for file transfers, fixing up the encryption, knowing that the automation works, getting it monitored, monitoring it by sending files! === ldapmanage tooling === At Dept of Education. ldapmanage tooling was fixed and extended, got the reporting working again (expiring and soon-expiring accounts) == Something interesting you saw or read recently == * [[https://www.bunniestudios.com/blog/?p=2037| Conterfeit chips in supply chains]], this is especially tough for military hardware with lifespans of a few decades. * [[https://www.intel.com/content/www/us/en/products/programmable/fpga/stratix-v.html| Intel Stratix-V chips]], worth about $5000 or something. Oh it's an FPGA, that's why it's so pricey. And this isn't some dinky FPGA running at 200MHz, this is a seriously performant piece of customisable silicon. * "Potential applications: Military radar" * "Efficient floating-point multiplication with over 1.25 TFLOPS" * You know, just casually dropping over a teraflop of performance, that's a little higher than a current gen nvidia GT 1030 card... * But that's nothing compared to... "User-friendly fine-grain partial reconfiguration, which allows you to change core functionality on the fly while other portions of your design are still running" * They have [[WP:Interlaken_(networking)]] support in hardware, a high-speed interconnect interface, like 100 gigabit and upwards * How about that recent Virtualbox e1000 guest-to-host exploit eh? == Questions to ask about the company and practices == * Are they doing best practices in engineering and enterprise computing? * Some notes given by them: * deployment teams or product teams, bespoke problem solving * building processes or products based on things learnt from these deployments * consultants/experts on tech problems, act as SMEs. * Deployment teams: do they have freedom to try new stuff? * There's 2000 employees globally, only 40 SREs or so * So who runs ops then? == Small talk topics == One of my technical interviewers lived in DC, so I planned some questions for them. * Tell me a bit about DC? * How long does it take to get to work? * What's the food and nightlife like? * As a talent recruiter, what does a Big Win look like there? = Q-CTRL = I interviewed with Q-CTRL in March 2019. I was ''that'' close to getting hired and it's the most enjoyable interviewing I've ever done. Ultimately they said No because they couldn't be 100% confident in saying Yes, and I think they made the right decision. At the time Q-CTRL was a very small startup and I would've been a technical linchpin for all their operations. The role would've required leadership a bit beyond my experience, so it'd be a risky decision (and probably very stressful for me if I got it). This is something I was thinking of publishing to twitter, about what I learnt about what their business does. {{{#!wiki note Praise the Lord, I had a really good interview! I *think* I can also explain the idea of "quantum control" now in layman's terms, so here goes: At the heart of any quantum computer is the "qubit", it's like a regular digital bit but quantum-y. Qubits are only useful when they're in a state of quantum superposition, which is the whole "it can be two things AT THE SAME TIME" feature. Qubits are really fragile, they'll fall out of this superposition state if you even look at them, literally. So we want to work on qubits without disturbing them too much, and we do this by removing as much interference and noise from the system as possible. This means stuff like shielding the quantum computer from radio/electrical interference, and cooling them down to as close to absolute zero as possible (roughly -273 degrees C). The analogy I'm going to use here is tightrope walking. Imagine you need to cross a tightrope and you're carrying a qubit with you, it just chills out and sits on your head or something. You're also holding a stick with some weights on the end to help you balance. In an ideal situation, the rope doesn't move and there's no wind or anything to throw you off balance - super easy. In reality, it's hard to focus perfectly as you walk across the rope, and sometimes you jitter around as your muscles try to keep your body balanced. You also have to struggle with gusts of wind, which you need to compensate for to stay on the rope. These are all unpredictable disturbances If you fall off the rope then you drop the qubit and it's no good, you have to go back and try again. This is called "decoherence", which is a something that you try to manage. Quantum control is about mitigating disturbances, and delaying or avoiding decoherence. Reducing external noise and interference is like shielding yourself from the wind while walking the tightrope, so the gusts are much weaker. The wind gusts also tend to follow a pattern, even if it's not entirely predictable. If you know when it's coming, you can lean into the gusts and hopefully not get thrown off balance. If you train your muscles to be stronger, and improve your muscle coordination through practice, it's much easier to balance on the rope because your movements are more relaxed and precise. For a quantum computer this might equate to a power supply that can maintain the voltage very precisely, or a laser with more consistent pulses (lasers are used to manipulate qubits). Carrying a longer or heavier stick also makes it easier for you to balance, but I don't have a quantum analogy for this one. Maybe IBM just sells you a more expensive quantum computer, because the stick is made of platinum or something. :P It's very similar to noise-cancelling headphones, if you think about it. If you know what the noise sounds like, you can make an inverted copy of the noise and cancel it out. Quantum control roughly amounts to that, compensating for inherent noise in the system, and finding ways to nullify it. Simples! }}}