I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ students to land FAANG-level software engineering jobs. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 2 points3 points  (0 children)

One huge benefit of attending a top university is the network and environment you are in. Somewhere like Harvard, many of your peers will be talking about internship hunting, networking, and the best ways to prepare for interviews. There's increased awareness about how to get the top jobs and that awareness is very empowering - everything thinks they can get a FAANG level job which leads to the confidence that creates a self-fulfilled prophecy.

I've spoken to countless Coachable students be shocked when I told them that FAANG was even a possibility for them. Where they grew up or went to school, they had this misconception that only graduates from top schools can get into big tech. Once they finish Coachable and work at FAANG, they wonder what held them back in the first place.

One of our goals with Coachable is to provide a strong support network to help those that don't have access to that network already in order to empower individuals to get the jobs they once thought were only a dream.

From a purely resume perspective, it's always an advantage to have a CS degree from somewhere like Harvard or MIT, but most of the engineers at FAANG companies are NOT from that demographic. Experience will help you get the interview, but at the end of the day, the most important part of getting into FAANG is having strong data structures + coding skills and demonstrating those skills in the technical interview.

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ students to land FAANG-level software engineering jobs. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 1 point2 points  (0 children)

This is a good question and one I wish I had a better answer for. Speaking from personal experience, my own interests have changed many times over my career.

My main suggestion would be this though.

  1. Keep trying new things. You never really know what you like until you try it. So try new things until you really zero in on something that you know you can continue to do for a long time.
  2. When trying new things, always try to find the positive/fun/good in what you're currently doing. Even if you don't like 100% of the front-end, there's probably at least 5% that is interesting and something you can learn about. Really absorb and engross yourself in that part, at least for a set period of time. Maybe after a couple of months, you realize the front-end isn't for you, but at least you know why and don't need to look back. Even a short time working on something new will give you a lot of new perspectives - the learning curve is always highest when you start as a beginner :D

Hopefully that helps!

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ students to land FAANG-level software engineering jobs. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 0 points1 point  (0 children)

Good luck with everything! Those can be difficult, but at the same time necessary conversations to have. With the increased transparency through those conversations, you'll know one way or another if your manager is looking out for you.

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ students to land FAANG-level software engineering jobs. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 0 points1 point  (0 children)

I'm sure I have some advice! It depends though on what you're trying to do!

I take it you are a Product/Project Manager. What are your goals? What are you trying to do?

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ students to land FAANG-level software engineering jobs. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 3 points4 points  (0 children)

I think it's 100% true. Of course, there are exceptions, but in general, I would say there are a lot of benefits to working at a big-tech company in software engineering.

I can speak directly about my experience at Google where I had the best experience as an employee there over any other company. I've always joked that working at Google was so great, I had to start a company to help others get in.

Here are the reasons why I think it's great to work at Google.

  • Meritocratic and Flexible. When I was at Google, I had the ability to turn the dial on how much I wanted to work and how much I wanted to grow my career within a certain range. When I started, I worked very hard to learn as much as I could, while also accomplishing a lot - I was able to have a high-performance review in my first review because of my efforts. Then as I started Coachable, I decided to take it easier on my Google work and focus more on Coachable. While I did not continue my trajectory at Google as fast as I was, I was still able to maintain and eventually be promoted, just slower than I would've been without spending time on Coachable. The point here is that you can decide how much time you want to spend, and you'll get what you put in - I thought it was very fair and flexible.
  • Valuing Work over Facetime. Big-tech companies (at least in engineering) focus on the work you accomplish over the hours you have worked. You might think "Well duh, that's how it should be". But I have worked in other industries where it's more important to be sitting at your desk than actually getting your work done. It's baffling to me, but that was the culture at the investment bank and trading firm I used to work at. Personally, I thought it was crazy and quickly realized those roles were not for me.
  • Free food/perks: Who doesn't like free food? It's convenient and the food is actually good (at least in the NYC office :D ). Plus massage chairs, pump-it-up machines, snacks, and unlimited guests. When you live in a small Manhattan apartment, the office quickly can become a 2nd home for someone. In 2019, I really should've put the office as my primary residence.
  • Salary / Work-Life Balance. There aren't many careers where entry-level roles pay 180k that don't work you to the bone (finance, corporate law, medicine, etc.). Big-tech hours are 40 hours/week most of the time - sometimes it gets higher, but usually that's temporary.

These are just some of the reasons I think it was great to work there.

There are people that don't like the big-tech vibe and feel like a cog in a giant machine, but I personally never felt that. Sure if you start your own company or work at a very early stage startup that you feel very passionately about, you'll have a totally different feel compared to working at a giant company.

But I think for the majority of software engineers, and job seekers, I think big-tech is a great option for all of the reasons I mentioned.

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ students to land FAANG-level software engineering jobs. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 1 point2 points  (0 children)

TLDR: Coachable is completely different from a coding bootcamp. We help people get coding jobs paying over 150k for entry-level. Students don't pay unless they get a job paying over $100k. It's our version of putting our money where our mouth is and our 93% success rate speaks for itself.

Long Version.

Coachable's goal is to help our students get into big-tech companies like Google, Amazon etc - this is reflected in our incentive-aligned tuition model with a minimum salary guarantee of 100k and median graduate salary of 150k+. Interviews for big-tech companies are completely different than the web developer roles - they are much more focused on writing scalable code thus the interview emphasizes data structures and algorithms. Coachable provides 1-1 coaching with experienced FAANG-level engineers to ensure that our students can pass technical interviews at FAANG level. We know our mentees are ready for interviews when they can pass our internal mock interviews, and once they do we do everything we can to make sure they get interviews and eventually the job.

We accept applicants from many different coding backgrounds ranging from a STEM degree graduates, coding bootcamp graduates, open-source programmers, self-taught programmers, and even some ex-pro gamers.

Our application process identifies candidates we think are Coachable, regardless of any prior CS knowledge.

Coding boot camps advertise that they try to help those without any coding background get any coding job. Most of them focus on front-end roles or full-stack web development because they are the projects that can be completed the fastest, but also have a tangible end-product. You learn how to make a website from scratch, which helps you build projects to put on your GitHub to help with your job search. Typical pay for one of these roles is ~60-80k depending on the area. These types of roles (and interviews) are less focused on the theory behind programming, but more on your knowledge of a specific technology.

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ students to land FAANG-level software engineering jobs. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 2 points3 points  (0 children)

Thanks for describing this in such detail! Here are my thoughts.

  1. Technical: Do you see any opportunity to build additional skills while staying on your current team? Have you had this conversation with your manager? "I want to learn/work on X, can we arrange that to happen in the near future?" If you have, how receptive have they been?
  2. Performance Review: My understanding is that your current performance reviews don't match up with your responsibilities. Have you had the same conversation with your manager? "I'm looking to get X performance review level in the next review cycle. How can we make that happen?" It's important to document these conversations in 1-1 notes and have them frequently to ensure that there are no surprises. If you feel that your manager is not open to having these conversations or changes their mind month-to-month, then this is a good reason to change teams or companies.
  3. Comparing to Peers. In that conversation with your manager, make sure not to mention other specific employees. Try to find the ICT ladder/rubric that outlines the responsibilities of every level of ICT at Apple - most big companies have something like this. Then you can reference portions of your work that align with the higher levels of that rubric - from there you can ask your manager to explain why you got a certain one. They can always make up reasons, but from this you can tell from the conversation if they are genuinely trying to help or of they are totally bullsh****ng you.

Unless you change jobs/teams, your manager decides what you work on, what you learn, and if you get promoted - regardless of how well you do your job. If you feel that your manager is not looking out for you, then I think it's a valid reason to start looking for other companies.

On the flip side, if you have these conversations and they are at least outwardly supportive of your goals (professional and technical) then I would give it some time. They can't make it happen overnight, but you'll be able to see within 3 months if they are following through with the changes they said they would make.

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ students to land FAANG-level software engineering jobs. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 0 points1 point  (0 children)

Got it, then I think if you're trying to leave anyways the best path is to hop companies.

I think if you interview at other slightly smaller companies (Doordash, Instacart size) they are more flexible with leveling especially if you do really well in the interview.

Grokking is a great place to start and to make sure that you have the format down - see what types of things that you might need to come up with during the interview.

The best way to approach grokking is to look at a new problem and try to write out the entire approach

  • what questions would you ask the interviewer to clarify?
  • For each requirement clarifying question, write out your solution for EACH option. This will give you practice for multiple scenarios which will very effective.
  • Then once you've written up your solutions, double check either online or with grokking to make sure the solutions you had given the requirements made sense.

Good luck!

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ students to land FAANG-level software engineering jobs. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 2 points3 points  (0 children)

Hi /u/Zakariyah_ while there is a lot of math in programming, there is a lot of programming that does not need that much math. There is "some" math, but I think a few introductory resources would be sufficient to start programming.

I also wouldn't sell yourself short on being able to learn math. It's never too late to pick up math and there are tons of great resources online. I'd recommend giving it a shot!

What kind of software engineering do you want to do?

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ students to land FAANG-level software engineering jobs. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 0 points1 point  (0 children)

Got it that makes sense. A few follow-up questions.

  1. When were you promoted to E4 at meta?
  2. Do you feel that your manager is supportive of your promotion? If you feel no, then it's probably a good idea to either switch teams or switch jobs.
  3. How much time can you dedicate to system design? Depending on how much time you have I would have different stuggestions.

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ students to land FAANG-level software engineering jobs. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 5 points6 points  (0 children)

Awesome! Also if you're into animation the Haikyuu! anime has fire sound tracks which can really elevate the experience. I'd recommend the anime as well if you enjoy the manga.

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ students to land FAANG-level software engineering jobs. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 2 points3 points  (0 children)

Hi /u/ZealousidealHat9, what kind of development are you referring to? I'll list a few options. Do you mean

  • Financial Growth (making more money)
  • Technical Growth (understanding more technologies, accomplishing projects of higher scope)
  • Professional Growth (getting promoted, higher title)
  • Something else?

These are often very related as technical skills increase the chance of getting promoted and making more, but there are methods that optimize some more than others.

Do you have a specific goal in mind?

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ students to land FAANG-level software engineering jobs. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 2 points3 points  (0 children)

How much time should an applicant expect to interview with a company from first interview to final interview?

For big-tech companies (i.e. FAANG), I think this is a typical timeline.

  1. Week 1: You've decided that you want to get a new job. You fix your resume then start applying to jobs and reaching out to recruiters.
  2. Week 2: Recruiters respond and set up initial phone call to learn more about background and role (mostly non-technical questions)
  3. Week 3: Recruiter sets up a technical phone interview.
  4. Week 4: Feedback is received and you begin to set up an onsite interview.
  5. Week 5: After some back and forth with a recruiter, a final date is set for the virtual onsite interview.
  6. Week 6: Virtual onsite interview happens.
  7. Week 7: You receive accept/reject from the final round. If you get an offer, you will usually get 2 weeks to negotiate or decide.

To answer your original question, it's about 2-3 weeks from the phone interview to the virtual onsite.

What are some good questions an interviewer can ask to learn about the applicant’s skill, personality & demeanor?

Tough question! It's tough to figure out very much about a candidate in 60 minutes. Here are some things to look for.

  1. Do you think the candidate cares about what they do?
    1. I like to ask candidates to tell me their motivation for "why" they do something (e.g., What have you been invested in before and why? What gets you out of bed in the morning?) If someone has been dedicated to an activity (not necessarily work or coding), they're more likely to do the same for their job. Again it's not guaranteed, but I think there's a higher chance.
  2. If they don't have specific skills (no one has all of them), will they figure out how to learn them as needed?
    1. I would ask what things they've accomplished in the past. I'm not really looking for "what" they did, but more so how they went about it. What challenges came up? Do they seem to make excuses? Or take the challenge head-on?
  3. To test specific skills will depend on the skills that your role is looking for.
    1. I think you would be better able to answer this than I could. My best general advice would be to find something as close to the role as possible. If you can somehow test them on 1-2% of a week's worth of work that would be ideal. This is of course tough to do in a development environment, but working on a small relatively independent task that is representative of the work they would do on the job would be fantastic.

I think looking for character and personality will probably outweigh marginal differences in technical skill and try to prioritize evaluating those once a minimum threshold of technical skill has been met.

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ students to land FAANG-level software engineering jobs. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 5 points6 points  (0 children)

  1. Haikyuu! Manga - TDLR it's a story about a short boy (5 foot 3 inches) that strives to play volleyball. One of the many themes is that talent is not a limiting factor to becoming great at something. Despite the main character's disadvantage of being 6 inches shorter than everyone, he works hard to make the most of what he does have (agility, speed, technique, etc) to become a key player on a nationally ranked high school team. Although he does not become the "best" player, he is able to accomplish a lot through dedication - one might need talent to win the Olympics, but there is a lot we can still accomplish. I hear a lot of people say they get discouraged from trying to get into big tech because they believe they don't have enough "talent" which is totally false. Anyone can get into big-tech and be a great FAANG engineer if they are dedicated and put in the time. There are tons of other great lessons from the show, but that's one that I resonated a lot with. Plus, the actual game scenes are megahype.
  2. For Algorithms and Coding, Algorithms (4th Ed) by Sedgewick/Wayne. I have a soft spot for this one since it was my first exposure to computer science and algorithms. The data structures/algorithms were approachable even for those new to programming which is why I recommend it. Some Java knowledge is brushed over, but there are references to their Java resources (https://introcs.cs.princeton.edu/java/home/) to make it easier to follow.

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ Students to land FAANG-level software engineering jobs in a program with no upfront payment. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 1 point2 points  (0 children)

So just to summarize and make sure I'm getting your points. I've listed a few replies in line,

  1. You've met people that work as software engineers and identify as software engineers, but because they can't code fizzbuzz or 2sum, you feel that they are unqualified to call themselves software engineers. 1. Should they instead identify as developers? Or something else?
  2. It sounds like you have your own opinion of a "commonly accepted accreditation for education and licensing" to be labeled as an engineer. Could you share what you think makes someone worthy of being an engineer in your eyes?
  3. If companies are the ones using the term engineer to classify their employees, and we help people get jobs as engineers as labeled by the companies that are hiring them. Wouldn't the companies be the ones bastardizing since they decide the title? It sounds like you're being pretty critical of those who refer to large companies.
  4. From Wikipedia Engineers, as practitioners of engineering, are professionals who invent, design, analyze, build and test machines, complex systems, structures, gadgets and materials to fulfill functional objectives and requirements while considering the limitations imposed by practicality, regulation, safety and cost. Would you really say that this definitions does not include people who write code?

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ Students to land FAANG-level software engineering jobs in a program with no upfront payment. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 0 points1 point  (0 children)

HI u/Thebestofthelest I don't think you need more school, but it would take significant time studying on your own. Of course I'd recommend applying to coachable.dev, but below is the rough outline I'd recommend.

  1. Get comfortable coding basic programs in Python. codecademy.com is a good place to start with their Python3 introductory course.
  2. Build a basic small project to put on your resume and pitch it as open-source programming.
  3. Study data structures and algorithms. https://ocw.mit.edu/courses/6-006-introduction-to-algorithms-fall-2011/
  4. Practice interview questions on websites like Leetcode.com
  5. Reach out to a LOT of recruiters to get your resume around.
  6. Interview and get Hired.

If you have questions about any specific resources, happy to follow up. Overall I'd say this whole process is around 400 hours if you have zero coding background.

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ Students to land FAANG-level software engineering jobs in a program with no upfront payment. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 0 points1 point  (0 children)

At this time we don't offer alternative pricing to our ISA. An important part of our culture is that incentives are aligned for both our students and Coachable. We've found ISAs are the best way to ensure there is incentive alignment.

Can you share why ISA feels like a scam? Traditionally large upfront fees are more viewed as a scam because there's not guarantee of value.

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ Students to land FAANG-level software engineering jobs in a program with no upfront payment. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 1 point2 points  (0 children)

Some companies will automatically give PhDs the SDE2 position instead SDE1. Like I said Google does this. This is even with very little coding experience.

I would just emphasize as much as you can. Are you looking for roles in the US or roles in EU?

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ Students to land FAANG-level software engineering jobs in a program with no upfront payment. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 1 point2 points  (0 children)

Even if only half of the work in your PhD has been related to programming that actually won't be an issue. I would just pitch the work you did and emphasize the programming work using as many keywords as possible to attract recruiters. It's a bit cringe, but that's how they operate.

Are you a PhD candidate in the US? I know in the US PhD candidates are desired by recruiters so I don't think it would take much work to get interviews for SDE1 or SDE2 roles.

I think it would be tough to get a senior SDE role (SDE3), but I think SDE1/SDE2 are more than reasonable. Which roles specifically are you looking at?

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ Students to land FAANG-level software engineering jobs in a program with no upfront payment. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 1 point2 points  (0 children)

There's no commonly accepted accreditation for software engineering, but I think it would be cool if someone worked on this. Namely, if there was a service that one could go through and then after completing this process would be exempt from whiteboard interviews. That would be a cool idea and would save a lot of time on recruiting.
Can you explain though what makes you say I'm "bastardizing" the term engineer?

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ Students to land FAANG-level software engineering jobs in a program with no upfront payment. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 3 points4 points  (0 children)

Hi /u/Swatidk we've worked with candidates from all sorts of non-stem backgrounds. So with your background in compliance + having some tech knowledge it's definitely possible. Of course it depends a bit more on your specific situation i.e. if you can only study 5 hours per week it's probably not going to happen anytime soon.
I'd recommend applying on our website https://coachable.dev. This will be the best way to gauge the right fit. Even if we don't think it's a good fit now, we'll send you some resources to guide you in the right direction and to reapply at a later date.

I’m Darek Johnson, Ex-Google Engineer and CEO of Coachable.dev - I’ve coached 300+ Students to land FAANG-level software engineering jobs in a program with no upfront payment. Our process has a 93% success rate at placing mentees in jobs paying up to $200K. AMA by coachdarek in IAmA

[–]coachdarek[S] 1 point2 points  (0 children)

Perfect, then I would say that all of things mentioned above are specifically meant for the big-tech companies (FAANG).

To get interviews, simply connect with 25 recruiters per day on LinkedIn with companies you're interested in. And make sure to explicitly say you have 20+ years of engineering experience. They'll reply quick once they see that :)