Update: I took the first technical interview of my life.
IT WAS BRUTAL. I’m pretty sure I failed the entire thing.
Haha. It covered mechanical, electrical, controls, and software all in one go. I didn’t realize how much I’d forgotten since undergrad / high school and how incompetent I’d gotten until now. There really was no excuse, I feel.
I mean, it is true that I’ve been working in software for the last few years. But they covered things I learned in high school that I remember being very easy. and things I covered in freshman and sophomore year of mechanical engineering. Then things I learned in junior and senior years when I took more electrical engineering. Also things that my friends had warned me about in terms of mechanical engineering. And things that I had learned after school, and were super obvious, and I didn’t have a clue under pressure.
To be fair, I did go in thinking the interview would be about a totally different thing (software interviews similar to cracking the coding interview),
I feel really technically incompetent now. Sigh.
I’m sure I also did really poorly on the soft skills part. I sort of just started giving up. I had totally zero memory of how to do the first question, and after that felt really incompetent and like there was no reason for me to be there. I started to forgot basic things like list assumptions and how I’d explain at the beginning how I would approach the problem. I was just standing there bemused by my incompetence and totally tired and confused even with simple questions they essentially gave me the answers to by the end.
I also went over the interview process in my head, and realized how many things I forgot under pressure that I really should’ve understood they were driving at, or that I half knew and definitely should have given a try at. Also things that I assumed were obvious but forgot totally that part of the process is listing assumptions. Also, I made a lot of really easy dumb mistakes, like mislabeling and reversing things. (I might blame other stuff for that though, which really sucks in lots of ways).
Also covered things I had learned the theory for and thought I understood, but had too little experience actually implementing in the last few years.
So tired. I really ought to build more technically challenging robots if I want a job in robotics. But I also want a job soon. Bleah. I dunno what to do.
I still love robots though, even if I’m terrible at anything technical now that I’ve spent 2.5 years teaching essentially high schoolers and 1.5 years programming derpy supposedly-short term projects in python working on genomics things.
There are also questions I feel like maybe I didn’t get because I’d just not heard them referred to them in that way.
Oh well. The difficulty of my first technical interview ever hopefully inspires me to do better on the next one (will I ever get a next one at this point? I’m learning that I’m really bad at first interviews even). Also I’m pretty excited about re-learning some of the stuff I used to know. Especially controls and electrical stuff. I’m not sure I want to study some of the MechE stuff anymore. Too many terrible memories from undergrad possibly.
This is a long post, I tried to stay positive
- The finding-a-job process can take 2 to 3 months, perhaps even a year. I’m trying to find a market rate job in a specific field I have mostly hobby experience in a month, and never having done interviews I really cared about before — that’s uh, not happening. I need more realistic expectations.
- Ergo, make sure you have friends to support you through this process. Also, friends can be very positive and supportive, but I didn’t get concrete feedback until failing and really doing a thorough post-mortem on what I did wrong.
- If you have friends who were on the other side, interviewing other people, that’s really helpful if you have specific questions (too bad I it took me two interviews to figure out what questions I needed to ask my friends)
- It may suck to feel like you are burning through opportunities your friends can connect you with. But take the long term view, that maybe you can help them one day. And the positive view, that this a growing opportunity
- I thought I was prepared for super low rates of finding a job. But I didn’t realize how personal it would feel to get rejected after talking to an interviewer
- Dealing with rejection will be an important skill for the rest of my life. Rejection means I need to try harder, not give up
- It may suck, but hopefully I will get better at presenting myself each time, instead of angsting uselessly to my friends, (who will mostly tell me I’m awesome and totally will find an great job, instead of criticizing me)
- Also, rejections do not necessarily I am a complete failure at anything technical. Rejections can just as easily have nothing to do with technical competence, and instead mean I need to become better at the interview process. Even the soft skills one!
The actual papers
- You might send 300 resumes out. So each application, no matter how much you like the employer, should take no more than a 10 minutes.
- The cover letter should take no more than 2 paragraphs, something that you could send in email! I was sending out single-spaced page long cover letters, and each one took half a day to write. Employers don’t have time to wade through that…
- For that to work, you should create maybe 2 or 3 resumes beforehand, highlighting different skillsets. And a cover letter template as well.
- Older people may have had an entirely different experience applying to jobs. So… trust friends who have applied recently, no matter how much you value the mentorship of older people
- I’ve been super nervous about the technical interview, after talking to PhDs who studied the “Cracking a Coding Interview” book for a year in order to get their job. But I absolutely should not reveal my nervousness. This probably cost me at least one interview, and may well be on the way to costing me two more.
- I don’t have anything else to say because I haven’t really gotten to the technical interview stage, hah
- I need to be more confident in my skills. I pay too much attention to the skills I think I lack or uh hate myself for not knowing. But other people, and especially interviews, have no need to know my private insecurities. And they will pick up on the signs if you’re not confident in yourself. You can’t sell yourself effectively if you’re always talking about the things you think you’re bad it! I need to prepare notes and highlight my skills
- For instance, I’ve always worried about how I know a little of many things, and I often worry that I don’t really know math, or statistics, or analysis. (This may have to do with my dad telling me that all I know is how to tighten a bolt). I worry that I’ve forgotten everything I learned. But I should definitely not reveal that to the interviewer!
- Some of the skills I think are obvious I have and don’t even bother to list comment on. Things like agile development, being comfortable with linux, having lots of experience with user interviews, all are pluses
- Also I really need to think hard about my skills. For instance, a friend told me I can totally sell my ability to quickly diagnose complex problems because I know many fields, for instance. For the same reason,mMy problem-solving and debugging skills are top-notch
- And if I fail technical interviews, it may suck since I get so few interview offers already. But I will have learned a lot about the interview process and do better each time. (Well, really I haven’t gotten enough interviews to do better yet. But in the future!)
- I’ve been asked repeatedly what my ideal job would me. I’ve been to embarrassed to admit that I want to learn more CS skills, and feeling desperate enough that I’ve given very broad non-specific answers (due to my self-imposed time crunch). Cost me two interviews as well. Instead, I should be open about what skills I definitely have and what skills I would want to learn. They want to keep you happy too!
- I should talk about 1 or 2 projects I did really well on: What was the problem, why was it important, why I was the one to solve it, and how I solved it. It’s great also to show lesson learned and comments on the process.
- Same for the paper / website portfolio. Direct people’s attention to one or two projects, and then list the rest of the projects below.
- In the interview, do not list skills like a robot!! This is super bad. The interviewers want to talk to a person, not a computer
It sucks that I’ve learned things only after I was lucky enough to get two interviews, at places I really would have enjoyed working at, where I was rejected after the first interview, before I even got to the second interview. And right now I only have two more interviews, that may take weeks to go through. A long nerve-wracking process!
(I’m comfortable writing this post because, in my experience so far, employers rarely look at portfolios / resumes more than 5 minutes ahead of an interview, so I’m doubtful they will read this blog post. Even if they did so, I don’t think I should be ashamed of growing my skills. I do worry that publicly listing my rejections could lead to other employers losing interest in my application. So this post might disappear some point…)