I’m Michael. I was a principal engineer at Facebook from 2009 to 2017, where I was the top code contributor of all time and also conducted hundreds of interviews. I recently co-founded Formation.dev, an engineering fellowship that trains and refers engineers directly into big tech. Ask me Anything!
I’m Michael. I was a principal engineer at Facebook from 2009 to 2017, where I was the top code contributor of all time and also conducted hundreds of interviews. I recently co-founded Formation.dev, an engineering fellowship that trains and refers engineers directly into big tech. Ask me Anything!
PROOF: https://i.redd.it/e74tupgktbx81.jpg
I have a lot to say about what it's like being an engineer in big tech, how to prepare for technical interviews, and how to land engineering roles at these companies. I would also love to hear your stories and give you personal advice on this thread! But feel free to ask my anything!
As an E7 level principal engineer, I made thousands of changes to Facebook across dozens of areas, impacted the entire Facebook codebase, modified millions of lines of code, and interviewed hundreds of engineers. Looking back, the most rewarding part of my time at Facebook was finding and mentoring high potential, early career engineers who needed support - and seeing where those people are today is why I decided to build a company where I could help engineers reach their potential full time.
I saw firsthand how hard engineers strive to build features that add value to everyone in the world. But I also saw how most of the big tech companies are lacking engineers who accurately reflect the diversity of the world they are building for.
Since leaving Facebook, I co-founded [Formation.dev](https://formation.dev/), a fellowship program for software engineers. Our team of incredibly experienced engineers, mentors, and recruiters are dedicated to helping ambitious engineers fill in the skill gaps needed to work at FAANG level companies and achieve long-term career success. We’ve helped over a hundred people like [Mitch](https://www.linkedin.com/posts/mitchell-oliver-2154511b2_softwareengineer-tech-community-activity-6921997676544737280-LCgm) and [Tiffany](https://formation.dev/blog/fellow-spotlight-tiffany-grevious/) make the leap.
u/michaelnovatireplied·★ FEATURED
It wasn't so giant when I started haha. The people I worked with were really smart, hardworking, and passionate about building things that the people using Facebook loved and found useful. For example, I started a product to support private college campus communities on Facebook and it was really rewarding to see the value that students got from having these safe spaces.
u/bleatingkansas wrote (the comment Michael replied to):
Michael, just how crucial are Friday cherry limeades in ensuring a company’s success?
u/michaelnovatireplied·
Joking aside, having an organic company culture that gets built up from small traditions like this makes a difference!
u/ibenedict127 wrote (the comment Michael replied to):
Hi Michael, is there a future for software and big tech that doesn't include harvesting user data and selling it to whoever will pay? It's pretty fucked up.
u/michaelnovatireplied·★ FEATURED
I don't think we'll fully cover this topic here but I have one thing to add which is that all the engineers at Facebook take privacy very seriously when building products. Sure there have been bugs reported and engineering mistakes, like at any company, but focus on privacy first when building new features and products was paramount.
Facebook's biggest mistake was in not understanding how a lot of people interpret the word "user data" differently across the world. Facebook's primary goal with user data is to keep it safe, secure, and protected.
When the press said things like "sell user data", people took that literally and were appalled because no Facebook employee would betray the users like that. But a lot of people interpret "sell user data" as making money in any way from the way data might be matched up, even if that's done safely and anonymously.
u/TheKingMonkey wrote (the comment Michael replied to):
Did you ever see Zuck blink?
u/michaelnovatireplied·
Yeah, I'm friends with Zuck and he's always been really nice and I don't get a lot of the portrayal! He's super competitive, and strategic, but he would ask how I was feeling when I was sick, and send gifts and what not.
u/biggie64 wrote (the comment Michael replied to):
What are the core development cocepts things a person should know ?
u/michaelnovatireplied·
There is a lot to talk about here and probably a lot of opinions.
Do you mean specific languages and frameworks, or more broad areas to look at, like frontend, wordpress, web3?
u/RockChalkLonghorn wrote (the comment Michael replied to):
For those trying to break into tech, how do you recommend making your application stand out among everyone else who is applying to jobs right now?
u/michaelnovatireplied·★ FEATURED
Great question, I have seen a few standout projects. A few points:
* It has to be something you are so passionate about that this shines through when you talk about it. e.g. a former musician who made a machine learning based tool to generate sheet music based on famous composers music.
* It's better if you launch the thing publicly, e.g. app in app store, live website on a real domain you bought. Real people giving feedback helps you learn and gives you more interesting things to talk about in interviews.
u/Lvanwinkle18 wrote (the comment Michael replied to):
How do you justify your work against the disastrous effect it has had on society and the American election process?
u/michaelnovatireplied·★ FEATURED
I left in early 2017 and had plans to leave around the US federal election end of 2016, so I missed a lot of this on the inside and am not qualified to comment on that unfortunately.
I can add one thing that's interesting. While I was there, Facebook really wanted to be a neutral party. When one person said something offensive to another person on Facebook, Facebook wanted that to be handled like it would be in real life, person to person. I don't think anyone was expecting people to want Facebook itself to have more of a voice and opinion on information and they have been working hard to figure this out.
u/FrozenSoviet wrote (the comment Michael replied to):
Hi Michael,
We often hear a lot about interview advice for new grad/entry level roles, but often it's a bit more nebulous what the expectations are for more experienced positions.
I'm curious how interviews may differ for non entry level roles (e.g. E4-E5 at Facebook), and do
u/michaelnovatireplied·★ FEATURED
Hi! At Facebook the interview process is the same for all individual engineers (ICs) E4+. In the onsite you'll do 2 coding interviews, 1 half coding/half behavioral, and 1 system design (SD) (sometimes adapted to your role, like product or frontend).
The key difference is the expectations in the SD interview. A more junior person will be tested on their approach and more basic knowledge of various pieces of a large system. A very senior candidate will be tested on their ability to give more alternates, more pros and cons, and more thoughtful examples leveraging their existing experience. Experience with big scale products can't really be faked, so this interview is aiming to test and calibrate that experience against Facebook's bar.
u/ulvain wrote (the comment Michael replied to):
> all the engineers at Facebook take privacy very seriously when building products.
I think the issue isn't with privacy breaches by accident or by piracy, but privacy breaches by design. And yes, get your point about aggregate or anonymized data, but when cross-referenced with
u/michaelnovatireplied·★ FEATURED
I totally understand the controversial nature of this and I think it's going to keep being a topic all of us, and all big companies have to deal with. All I can say is that even though Facebook is a business, people do genuinely care about this stuff so much more than I've seen people caring at some other companies that have a ton of information on you, so I hope that they can keep working on this productively.
u/SalmonGod3 wrote (the comment Michael replied to):
Do you have any insights or thoughts on the debates over the influence of social media algorithms on human behavior and culture, or how social media intersects with mass surveillance? What is your impression of how the leadership in these companies view their responsibility in r
u/michaelnovatireplied·
I think this question is a beyond what I feel qualified to comment on. You're asking some pretty big questions that people have dedicated their lives to researching and solving!
u/cizzlewizzle wrote (the comment Michael replied to):
Any crises of conscience, morals or ethics you ran up against while working there?
u/michaelnovatireplied·★ FEATURED
There have been some pretty intense internal debates over product features - privacy/information related or otherwise. There are a lot of ambitious employees at Facebook who are also humans who use Facebook and other services and push for different ways of looking at things.
This is exactly why I'm fighting so hard now to help people from more diverse backgrounds get into companies like Facebook. We need need qualified engineers to fight for their views as well.
u/livestrongbelwas wrote (the comment Michael replied to):
What criteria do you use to determine when it’s time to pivot to a new career path?
u/michaelnovatireplied·★ FEATURED
While I haven't pivoted careers, I did have a pivot in college. My college program was structured to let you choose a career direction in your 3rd year. I was expecting to go into Physics or Nano-engineering and hardly took any computer programming course in my first two years.
For me: passion. I loved reading articles about nano-engineering and black holes, but I would get distracted and my mind would wonder. When I start programming on something that I'm passionate about I almost can't stop. I dream about ways to make the code better. I think it's a very privileged position to be in to even explore these passions, which is why I try so hard now to help people who discover that passion later on to efficiently nurture it to make it a career.
u/abitrolly wrote (the comment Michael replied to):
I burned out from IT startups and spent several years without a job. Now at 40 I run out of money and IT is the only thing I knew. Do I have a real chance at joining FAANG?
u/michaelnovatireplied·★ FEATURED
When you say IT, I'm not sure if you mean like hands on programming, or other roles in the IT space. You absolutely have a chance at joining a top tier company. I've seen people from all kinds of backgrounds do it. There's someone who was in his 30s, 40s, was a tattoo artist amongst many other things, and was a great engineer!
My only concern would be if you run out of money and can't get the time you need to prepare and focus. Maybe taken a simpler low paying job for a while so you can prepare?
u/_klatu_ wrote (the comment Michael replied to):
Have you heard of Shoshana Zuboff's book The Age of Surveillance Capitalism? Do you think that there is a way to convince Google, Facebook, Amazon, etc to be more socially responsible with how their algorithms shape human behaviours?
u/michaelnovatireplied·★ FEATURED
I'm not entirely qualified to comment but can give some information from from what I've observed.
1. There isn't like a single "algorithm" somewhere making decisions. Elon Musk talked about open sourcing Twitter's algorithms after (if) the acquisition goes through and I think this will be really hard. The "algorithm" is a complex set of many pieces. Some of which are indeed more algorithm-like processes that can be written out. Some of them are extremely subtle and nuanced product decisions that impact how people use the product. Knowing just the algorithms I mentioned won't really help anyone with anything, because user behavior is impacted by all kinds of non-algorithmic product decisions. Even seeing the entire source code would not give a good look into this.
2. There are people who care at the companies. The way intellectual property treated in the United States, where most of these companies are based, mean that companies have to keep all information about their processes secret. I actually think people would love to talk more about how things work and I think that would be much more effective than trying to have outside experts examine these algorithms.
u/reporter_assinado wrote (the comment Michael replied to):
Hi Michael, my question is about how to become a software engineer.
I started coding a little while ago, am learning some languages and am thinking about making a loan for graduation (btw I am from south america).
How important is the degree as an engineer? Could I progress wit
u/michaelnovatireplied·★ FEATURED
Hi nice to meet you. So at the top tier tech companies, a degree really isn't that important or a requirement to get or do a job in most cases. But that said, if you are in South America and would want to move to the United States, where most of these companies are based, then you might have immigration issues not having a degree. I'm not a lawyer, but I'm from Canada originally, and know that not having a degree can make it harder to physically go to the USA.
There could be a few paths. There are some decent engineering markets in South America, like in Brazil, parts of Mexico, Columbia. I would maybe see if you can get a job at a company there is EITHER one of the leading South American based tech companies OR a company that does a lot of work for a big tech company in the USA. Once you have a year or more experience on paper that will get you more interview opportunities and you can go from there.
Additionally, it's a really good time right now to work remotely as many companies, like Airbnb, are supporting remote work. I don't know the laws in your specific country, but if you are employed at a local Airbnb office for example, your country might have employment laws about you should look into (for example if there is a job posting that requires a degree, and you get it without a degree, someone might be able to sue the company because they gave the job to someone not meeting the qualifications... this is a hypothetical but I've seen stuff like this in some places)
u/anon2282 wrote (the comment Michael replied to):
Why does your former company seem intent on ruining humanity?
u/michaelnovatireplied·
I can assure you that all the people I know that work there and have worked there are not. That said, why do "seem" that way is that I think Facebook has has done a really bad job explaining certain things publicly.
u/One-Art-4098 wrote (the comment Michael replied to):
How have technical interviews changed over the years? Why is it still so hard to pass the systems design interview?
u/michaelnovatireplied·★ FEATURED
Good question. Facebook's interview process might seem surprisingly similar for like 10 years, but it shouldn't be surprising. When you have candidates trained in different languages, and working on vastly different companies/projects, you need an extremely consistent interview process to fairly evaluate people and compare them to each other. Behind the scenes there's even more checks and balances to keep the process consistent and fair.
RE: System design. It's hard at Facebook because it's testing for your experience with different kinds of large scale products (whether it's more backend scaling, or highly used user facing products). If you don't have that experience, it's hard to fake it. They have a program called the "Rotational Engineer" program that's a mid-level program for people who never had the "scaled up" experience and need to fill in some gaps. The other thing about Facebook, is that won't down level you to entry level if you have some experience and are weak only on system design.
At Formation.dev now, I work with people who actually have experience and don't know how to connect the dots yet to the FAANG-level system design expectations and have had great success there.
To summarize: if you have the experience and are failing, there are ways to improve your performance for sure. If you don't have experience and are failing, it's hard to fake it, so I would maybe look at the Rotational Engineer role, or maybe look at another company first that has a more knowledge-based system design process.
u/vc84 wrote (the comment Michael replied to):
The ability to solve DS&A and system design questions is considered the standard for big-tech technical interviews. Is this really the only thing an applicant need in order to land a role at these companies? Is knowledge about the company stack also important?
For example, if
u/michaelnovatireplied·★ FEATURED
Hi! I call DS&A table stakes, you need to meet a minimum (and high) bar regardless of the others.
System design at Facebook is used to determine level, so if you are an experienced frontend engineer, you might struggle on a backend interview because you don't have the same experience there.
Finally, technical behavioral interviews (Facebook calls this the Jedi interview) are extremely important. They typically are looking for flags that would otherwise be missed by the other interviews. So someone who studied their way through all the other interviews might fail the Jedi interview if they can't talk about their experience in a way that would be consistent with other people at your level on that team.
To answer the question directly about being disadvantaged: it depends on the seniority of the role and the company. You may or may not be.
u/michaelnovatireplied·★ FEATURED
I spent a lot of time working on Facebook Groups and I saw some very incredible ways that Facebook has helped people in creative ways. There are billions of people in the world and we all have flaws and good and bad aspects to us. I hope Facebook is the same and I know they are striving to improve and if we all had that kind of intense pressure to improve ourselves, society would probably be a better place.
u/One-Art-4098 wrote (the comment Michael replied to):
What are you feelings about bootcamps? Do they prepare you for a SWE career?
u/michaelnovatireplied·★ FEATURED
Hey! Good question. It's really hard to generalize, it's like asking "does getting a CS degree prepare you for a SWE career". There are many different bootcamps of all shapes and sizes.
Ultimately it comes down to your personal goals for your SWE career and I would want to give you more personal advice.
If I were to generalize, I would say that I see a bootcamp as a tool to learn basic programming, in the same bucket as things like the Odin Project, freeCodeCamp, CS50, but with more people around to ask questions to or motivate you. Unlike these alternatives, most bootcamps add an expectation to get a job at the end of them and this is concerning to me because people are uprooting their lives based on this expectation. They don't really work for people with zero experience getting any kind of tech-related job at the end and people in this bucket often continue to struggle planting their feet firmly in that CS career after getting that first job.
So in summary, I think bootcamps are a great step in the journey to learning how to program, but I wouldn't do one solely to prepare for a SWE career or expect it to be the final step.
u/msjenniferlc wrote (the comment Michael replied to):
Apart from experience, what sets great candidates apart from good candidates during the interview process?
u/michaelnovatireplied·★ FEATURED
Hi, so in my experience each type of interview is hyper focused on specific things, so I can give those things for each type:
* Data structures and algorithms: the "technical" (j.k.) term is "clean code". If someone naturally writes well organized code, minimal logic on the first try (no extra if statements or loops... even if they clean them up afterwards), that's always really impressive. Pro-tip: if an interviewer tells you your code looks "really clean" you probably passed that interview ;)
* System design: if it feels like an exciting back and forth conversation more than interview that's fantastic. Like I'm talking to a peer casually about the problem.
* Technical behavioral: this is a wider bucket, but strong career trajectory at your current company is very impressive, like being promoted every 6 months, or receiving really high (like top 5% at your company) performance reviews.
u/Zoetje_Zuurtje wrote (the comment Michael replied to):
Why'd you choose engineering over computer/data science?
u/michaelnovatireplied·★ FEATURED
Hi! I actually didn't know I wanted to program all day when I started college. I was really into physics and the universe. I wrote a paper on quantum computing in high school. To me, engineers build things, and scientists study things. When I look for the deepest thing inside me that makes me an engineer it's that my drive is to find patterns and connections amongst very large systems/projects. So I like building things in the messy and imperfect world we live in, rather than coming up with interesting ideas on paper.
u/TomTom2536 wrote (the comment Michael replied to):
Nowadays do you work much in coding the metaverse? Do you see it as the future of our world?
u/michaelnovatireplied·★ FEATURED
hey, I haven't worked on coding for the metaverse yet! ( I have something like 15,000 commits in the past two years working on Formation, so I'm busy in the non-metaverse right now)
I do hop into some Oculus worlds every once and a while, we use this product called Gather to hangout casually at Formation, and Tandem to chat for work related things.
If we look at the richness/engagement of online human to human interaction over time, it's gone from very limited async text, to voice, to photos, to videos, video calls, etc... I think the social side of the metaverse will be about bringing even more richness to our online human interactions. It might not be about funny looking avatars, but just richer interactions. I still have so many text-based chat interactions with customer service for example, where I get really angry and lose my patience in a way I would not in a more face to face context. Maybe the world will be a better place if some of these anonymous interactions have have more human-feeling to them.
u/sonne-tanz wrote (the comment Michael replied to):
When I worked at Facebook some years ago, my privacy was invaded by a fellow employee in a retaliatory act after I provided critical feedback about the team’s work. this person instructed a contractor subordinate to access my personal travel history, which included my home addres
u/michaelnovatireplied·★ FEATURED
Hi, I've had some tenuous interactions with HR at Facebook and now that I have my own company I see how hard it is to handle private employee matters. HR's job at the company is to ultimately protect the company but protecting the company means also making sure that employees are happy and productive in order to keep the company successful. So when there are conflicts like this it becomes really hard to navigate.
These types of conflicts happen at companies of all shapes and sizes and it's messy, because when you take off your Facebook hat, we are people, and people have messiness.
u/FalyR wrote (the comment Michael replied to):
What has your experience, if any, with experienced hires from places like MBB Consulting compared to people who’ve always worked as engineers been?
u/michaelnovatireplied·★ FEATURED
Well there's title inflation :D. I remember I interviewed a "Vice President Engineer" once and was so confused. The candidate was a solid E5 senior engineer, and we both found the title kind of funny.
Joking aside, I think the work ethics and intensity are similar, but ownership mindset is a tiny bit different. At Facebook, an engineer is an owner, responsible for their code, and they feel pride in seeing their code shipped, and then improving it to make it even better. The mindset in MBB is a little more about doing well on a project and getting good reviews from your clients and partners. I might be zooming in too much, but that's now I see it.
u/one-hour-photo wrote (the comment Michael replied to):
Do you believe the act of creating content for social media giants, as a user, constitutes labor that should be paid?
u/michaelnovatireplied·★ FEATURED
Hi, interesting question. I believe on most platforms, definitely on Facebook, that you own your content and can do whatever you want with. You can post it on any number of platforms and Facebook doesn't own it. There are some platforms that are focused on trying to help people make money from their content, Substack is a newsletter platform, Patreon is a platform for video content. None of these have worked to make money from 100% of content and content creators often have to very strategically post content to "free" channels, or to modify content into different formats and post in different places to drive traffic to the paid sources.
So to answer the question, I don't think posting content on social media is payable labor, nor do I think that people should get paid to post socially. I think the best solution is for platforms to give people many options to post content in different ways (paid and unpaid) to a person can decide what's the best way for them to create content.
u/whatTheCodeIsThis wrote (the comment Michael replied to):
Hi Michael, is Formation.dev a bootcamp? I heard those places are scams..
u/michaelnovatireplied·★ FEATURED
Hi, no Formation isn't a bootcamp. We happen to work with a lot of bootcamp grads that were some of the lucky ones who got any job out of the bootcamp to level up to a top tier job. People's negative experiences with bootcamps are one of the reasons we made Formation because we felt bad for all those people who are capable of having better careers but didn't get the personal coaching and mentoring they needed.
I also wouldn't say all bootcamps are scams either. Some programs are bad intentioned, some are good intentioned. My biggest problem with bootcamps is most of them give you the promise of a job at the end and this just shouldn't be part of the offer. They should stick to training basic programming skills and they might have a better reputation.
u/Dinosaur-Neil wrote (the comment Michael replied to):
I have a lot of questions.
Number 1. How dare you?
u/michaelnovatireplied·
:(
u/thee_accountant wrote (the comment Michael replied to):
Earlier this week I was talking with some coworkers about something odd that happened a couple years ago. The next day, my Facebook feed was showing me ads about the topic we were talking about. I did not Google or yahoo this topic later on in the day so there's no reason why it
u/michaelnovatireplied·★ FEATURED
Hi! A lot of people have noticed these kinds of things too, even my family. So I haven't been at Facebook now for a few years, but as far as I was aware was absolutely no listening to conversations to show you ads and there also isn't a single reason you would see those ads. These are some of the possibilities:
* You happen to be really similar to others in very scary ways that are almost impossible to believe. Some of these ad providers build profiles based on your demographics and have gotten scary accurate in making predictions about you. For example, if there's a trend forming of people similar to you on paper starting to go to a specific fast food restaurant, you might start getting ads targeted to you for that restaurant. And then coincidentally a friend also similar to you who just went to this trendy restaurant might be talking to you about it around the same time.
* Someone in your house or sharing internet searching for the thing you are talking about without realizing it. Say you are at the dining room table talking with your sibling about something and a parent in another room overhears and searches for it, you might get ads targeted toward your IP address not realizing that other person even overheard you.
u/jindog wrote (the comment Michael replied to):
Since you know facebook is helping fragment society, is generally a negative for people's self-image, and contributes greatly to social inequality why would you devote your life to enabling it's continued growth? I understand not knowing all the issues in 2016 but now it's more t
u/michaelnovatireplied·★ FEATURED
Hi, I can respond to both questions separately:
RE: social inequality. Before the internet, and still now to some extent, city boundaries and zoning have had a lot of problems with fragmenting cities. There are many experts who are dedicating their lives to these topics so I won't comment much, but humans interacting with humans everywhere have historically had these kinds of fragmentations, and I don't think it's Facebook's fault if they appear there as well. That said, Facebook wants to reduce inequality by hopefully reducing that fragmentation from what happens in real life by making it easier to interact with people.
RE: Formation being paid. "Fellowship" is a word that doesn't really have a common definitely outside of academia, where it has a specific different meaning. We feel what we offer is clearly communicates what we do and would be devastated if people felt deceived, and so far we haven't seen that be the case. Now to answer why we charge:
1. If you do your part, we work with you indefinitely until you get a new job, and those jobs have been paying roughly $80K more in compensation on average a year for people. So people see this is an investment in themselves, like personal training, and it's been working well.
2. We considered what it would look like to be a non-profit, but we decided not to because we wanted to hire the best engineers, recruiters, coaches in industry. We've been succeeding on this, but those engineers are paid extremely well at their current FAANG-level companies and we have to pay them well. So charging helps up bring the best talent to the company that then helps deliver those win-win results we are aiming for.
u/EngineeringDevil wrote (the comment Michael replied to):
What do you think should be the Entry Level salary for your career? Talking 0xp
​
So many articles from billionaire owned news papers about how new workers are overestimating their starting salary by +50k but the fact that they are owned by the same people who say Work f
u/michaelnovatireplied·★ FEATURED
Hi, entry level salaries depends significantly on the company, location, and role. Levels.fyi is a website that has a lot of information on all these dimensions to compare salaries in different locations.
There are a lot of jobs though that don't pay nearly as much as the FAANG level bar. At the end of the day, the company you are working for has to be making more money by hiring you to justify paying your salary, your benefits, the HR overhead, and having at least some profit leftover. So the successful companies do indeed pay more not just because they have more money, but the impact you are having to the business is very large, even as an entry level.
So you'll find a lot of engineering jobs at non-tech companies where you don't really have enough impact to the business for them to pay you a larger salary. There are also companies that take advantage of people but I wanted to focus on the good intentioned ones in this discussion.
u/Bape718i wrote (the comment Michael replied to):
How seriously do you take interviewees with a non-traditional engineering background? e.g. those that are fresh out of a “bootcamp” that claim to be at a senior level. Have you ever found yourself to be more critical of these people whether it be intentionally or unintentionally?
u/michaelnovatireplied·★ FEATURED
At Facebook, there weren't (and still aren't) many direct pipelines for people fresh from bootcamp backgrounds in general.
I hope this answer isn't too complex or detailed but it's the thorough reason why it's IMPOSSIBLE to get a senior (or even mid level) job at Facebook directly out of a bootcamp with no prior professional software engineer experience.
Levels at Facebook are not about raw skills (be it technical or behavioral) but rather they are about your scope of responsibility.
1. E3: Entry Level. day to day work at the task level. Receiving tasks from your manager and team, completing them independently with no help.
2. E4: Mid Level. day to day work at the feature level. Receiving feature level goals from manager and PM and independently breaking it up into tasks. Being the go to person for that feature and maintaining it in production proactively.
3. E5: Senior Level. day to day work at the team level. Helping prioritize features for the team, helping breaking up larger goals into features. Reviewing code and mentoring others. Interviewing and hiring. etc...
Now the KEY is that you get promoted to the next level when you have ALREADY been performing at that level consistently for some amount of time (say at least 6 months but typically longer).
So if you come out of a bootcamp with no experience, you are not equipped with the experience necessary compared to other E4s to justify being at the midlevel. You would also need to have demonstrated that level of responsibility in your bootcmap for 6 months MINIMUM and typically 1-3 years. Most bootcamps are 3 to 5 months and you start from zero, not from the E4 responsibilities above.
So unless there is deception going on, it's not possible and doesn't make sense.
u/kiwiroll9 wrote (the comment Michael replied to):
What's you advice to newcomers regarding finding the right skillset and passion?
u/michaelnovatireplied·★ FEATURED
Hi! Try a lot of things by building a small few-day-long project (React, backend, web3, machine learning, etc...) and when something clicks, triple down on it and start building a career from it. Once you've settled in, keep exploring more areas.
There's infinitely many things you can do in engineering, and when you start out you don't know what you don't know, so that's why I suggest an iterative approach and starting somewhere.
u/Mana-Elixir wrote (the comment Michael replied to):
I’m teaching myself front-end development to start and also plan on learning .node. Apart from HTML,CSS,JS, and .node, do you have anything else you would recommend ?
I obviously plan to learn more than just that and go into backend as well, but I’m breaking it into steps for my
u/michaelnovatireplied·★ FEATURED
Hey, I think that's a great stack to start with and plenty to get into your first role. I wouldn't go too deep into too many different things and I would recommend being better at a smaller number of things for your first job. Demonstrating a little deeper expertise/experience in one area will be more impressive than broad and shallow.
I would recommend being really good with building projects in a single page React app, focusing on depth in React, and passable with CSS. On the backend, being able to run a node server with a simple API that the frontend calls and being familiar with a few different ways to store data would be good: e.g. SQL, Firebase, MongoDB
u/sickofgooglesshit wrote (the comment Michael replied to):
Did you really just use LOC as a measure of accomplishment?
u/michaelnovatireplied·★ FEATURED
I was trying to use the LOC as a an example of the scope of my work. I was also a person who cranked out code and they created the Coding Machine Archetype for me to get to the E7 level. And yes, talking about LOC and PR count annoyed a lot of people at Facebook too :P.
A superstar sports team needs the best people in the best positions and each person has impact in different ways.
u/bugzpodder wrote (the comment Michael replied to):
Hi Michael, do you feel there is a (positive or negative) bias in hiring minorities/women as a software engineer in the tech industry?
~~Does university degree matter after you have relevant work experience?~~ \[already answered\]
How do you feel about open source contribution
u/michaelnovatireplied·· edited★ FEATURED
Hi, good questions. I don't think there is conscious bias, but humans have unconscious biases. Facebook runs this (I believe mandatory) session on acknowledging unconscious biases to try to help surface some of those things. They try to have the interview processes surface these unconscious biases as well. When I left, engineers were encouraged to use gender neutral pronouns when talking about candidates.
I've seen tremendous efforts in recent years across all of big tech to try to get to address demographics that are underrepresented in tech and they are just starting to move the needles a tiny bit. However, even the areas that companies track in their "diversity reports" are a fraction of the hundreds of things we should be tracking and I think this will continue to be something invested in at least a decade to see the results. Formation exists to accelerate this.
Open source on resume can be great. A few suggestions:
1. Make it clear the project was open source and what your contributions were to it
2. At the end of the day, people are looking for experience, so if the open source project had hundreds of thousands or millions of people using it and had some of the problems a large product would have then you want to highlight those aspects.
3. If you open sourced a project, or it's a project with a few people on it that no one really uses in public to a large degree, then that is more like a really good college group project and I would describe it that way.
u/Kinto_il wrote (the comment Michael replied to):
What separates the various levels of engineers in companies? For example what's the difference between an E6 and E7?
u/michaelnovatireplied·★ FEATURED
The difference between 6 and 7 is a big one. When I left about 15% of all engineers were E6 and around 1% were E7.
At E6, you are basically doing an incredible job across the board. You are working on important projects, writing a lot of code, reviewing a lot of code, interviewing others, setting team goals, generally setting an example for a department.
To get to E7, you need to have a "superpower" that makes you unique and have a org/company wide impact. Facebook has created something called "archetypes" to summarize those superpowers. I was the "coding machine" archetype, which was created for me actually, and is a rarer one. Other ones included Generalist, Specialist, Fixer, PM/Eng Hybrid.
I commented below about E3, E4, E5: https://www.reddit.com/r/IAmA/comments/ui98mg/comment/i7btvqe/?utm\_source=share&utm\_medium=web2x&context=3
u/gruntothesmitey wrote (the comment Michael replied to):
How do you feel about being part of the problem and not part of the solution?
Facebook is really, seriously evil and fucked up...
u/michaelnovatireplied·★ FEATURED
Hi, I'm a really middle of the road person, so I think that everyone has good traits, and traits they want to improve, has good days and bad. If we don't believe in the good we can do together then we have no hope, so I spent my time there trying to enable people to do more together than they can do apart.
I'm really sad to see some of the recent problems and pain that people feel towards Facebook. It's so incredibly hard to bring people together who fundamentally disagree on the truth and part of me thinks Facebook is brave for trying, and part of me thinks that they need to push harder and harder to improve.
u/RipDankMeme wrote (the comment Michael replied to):
I really like what you are doing. I am an engineer working g at one of the big companies. Its a huge road and there is so much talent to compete with. How do I know I'm making an impact, how can I? It seems there is opportunity but I just don't know how to rake advantage of it.
u/michaelnovatireplied·★ FEATURED
Hi, glad to hear you on the road and trying to have a positive impact!
I left Facebook a few years ago and it continues to grow, so I've heard it can feel harder to see the impact.
When you zoom out of the day to day, the promotion guidelines, the performance reviews, try to take a look at what impact your code has had on others.
For me, I like working on user facing stuff because I see the impact (good and bad) almost immediately. I loved (and still love) working all weekend on a tool for a small non-engineering team to make their lives easier, and see them smile when they use it. I loved working on Facebook Groups and seeing the creative ways people were using the features to really have a meaningful impact on the members lives.
To get up to Facebook's E7 it takes a lot of support from a lot of people, and despite being a coding machine heads-down coder, you need to build relationships with fairly senior executives who will be comparing your work to other E7s at the company. Only 1-2%ish (not sure the number now) of people are E7, so it's fairly niche and I would focus first on crushing it across the board to get to E6 (\~staff)
u/RainThePro wrote (the comment Michael replied to):
Do you believe people can still found/invent something like Facebook or mth that becomes big? I mean that some young person who is a casual student can invent something that becomes a big big thing? or do you think that in todays world its not possible really anymore
u/michaelnovatireplied·★ FEATURED
It's definitely possible! Musica.ly (which was acquired by Byte Dance and somewhat morphed into TikTok) kind of came out of nowhere while I was at Facebook and grew to tens of millions of users.
That said, the large companies have too much nuanced knowledge of how to grow and sustain products and it's incredibly hard for a student without any of that knowledge to reproduce this kind of growth effect. Wordle is a recent phenomenon, but the founder worked at Reddit and had some insight into these things.
I think the next big thing is going to be not "social" but something that spawns out of Web3/Metaverse/NFTs and that's why so much attention is in those areas. It's not going to be what we see today, but something new. These ideas are challenging some of the fundamental ways humans interact, so there is room for something big.
u/justsurfing88 wrote (the comment Michael replied to):
Hi Michael! Thanks for doing this AMA.
Is it possible to get a job at FB without CS work experience as a self-taught learner? If yes, what advise would you give to such people?
u/michaelnovatireplied·
Yeah absolutely. I would want to look at your personal situation. This somewhat hidden website outlines a bunch of paths to look at: [https://access.fb.com/career-pathway/](https://access.fb.com/career-pathway/)
Some of the best engineers at Facebook didn't have CS degrees :D
u/vanvoorden wrote (the comment Michael replied to):
Howdy! Glad to hear you are working on your own company. Sounds really cool!
A question I always like to ask former people of FB is "What's the worst bug you ever shipped?". For example, I once broke composer in the production Big Blue iOS App (the version live on App Store).
u/michaelnovatireplied·★ FEATURED
I can talk vaguely about this because the details might be confidential still. Facebook has a way to run a migration when you want to change an existing data model for something. I ran a migration that had a bug and overwrote billions of edges of data. Fortunately I was able to fully resolve/repair it really quickly, but it was a stressful birthday that year at 4am.
u/Edwardc4gg wrote (the comment Michael replied to):
Hey Michael,
first and foremost thank you for what you've created! It's an invaluable tool that i hope people use.
With your time at facebook, how many decisions were made above you that you and your teams had to complete because some higher up who has no clue how it works s
u/michaelnovatireplied·★ FEATURED
I can speak to my experience while I was there, but obviously not since I left, since that's all second hand. Day-to-day was extremely engineer driven. You had a lot of autonomy to work on what you wanted. The counter balance to that is that the performance review process is really intense and that's when the "impact" of your word is measured, debated, and compared to others at your level. What "impact" means is hard to define here, but at lower levels there are a lot of examples and the process is about collecting proper evidence via peer feedback to quantify your impact. Executive would review day-to-day and week-to-week work in live meetings with the team leads and give feedback and comments, but rarely top down commands at this level.
That said, the high level decisions were entirely made by the executive team on a less frequent basis, such as quarterly goals. Engineers had less insight and involvement in setting those goals. Mark Zuckerberg, and the other leaders would be working on them.
u/UnknownWon wrote (the comment Michael replied to):
What are the chances of two Michael's both being in the 9 year club?
I'm a senior FE dev in South Africa and am looking at jumping ship to a first world country. I'm self taught, studied construction and after a spinal injury, needed to find a desk job.
I feel like I'm in an aw
u/michaelnovatireplied·★ FEATURED
Hi Michael! Sorry to hear about your injury but I'm glad you found something productive that you like doing, that was probably a big unexpected life change.
Yeah not to push Formation but this is the common background we work with to help fill those gaps. So even though you feel a bit isolated, you are not alone in these struggles!
RE: Interviewing. There are a lot of companies out there. The top tier companies often use data structures and algorithms problems as a way to give everyone, with varying experience in varying stacks, an equal experience. If you are aiming for this level of company, you're going to have to invest some time in both learning more theoretical concepts, as well as practicing using them in interviews to pass (which is a different skill). Secondly, your practical experience sounds great, so you probably have a lot of stories to tell in a behavioral interview. The best way I can summarize my advice for those is: 1. choose two of the most impactful stories you have of things you've done. 2. peel the onion: present those with 1-2 sentences each early on, and let the interview ask follow up questions, each time don't go on a diatribe about everything, but peel one layer of the onion.
RE: Gaps more specifically. Even the most senior self taught person who interviews at Google and Facebook will have to do some algorithms. Now in your case, if you are truly super frontend focused, you might be able to find a path where you do more live practical coding than theoretical algorithms. But if you are more full stack, or product leaning, you will need them. You don't need to memorize everything and do all these Leetcode "hard level" problems, but you need to have passable skills. I would start with "Leetcode easy" problems to benchmark how much work you have ahead.
u/michaelnovatireplied·· edited★ FEATURED
Hi, nice to meet you, I like to give more personal advice because every path is different and I want to find something a little unique about you that I can hone in on.
My most general/therapy-like advice is focus on these four traits:
1. Grit: if something doesn't make sense just relentlessly keep trying until it does. Study the same concepts from different angels, debug something diligently line by line until you figure it out.
2. Curiosity: never be satisfied with "it just works", keep asking questions until you have a better sense of why.
3. Ownership: don't expect anyone to tell you what to do or anyone to have the definitive answer to anything, you need to ultimately be responsible for understanding or not.
4. Teamwork: help those around you who are learning. Oftentimes you get better by making the people around you better.
u/hey-another-one wrote (the comment Michael replied to):
There was a previous time (not too long ago!) that I was looking at learning to code and more specifically towards the Swift/iOS engineer route. There really wasn't a ton of bootcamps with a focus on iOS. It was and still looks like by far the majority of coding bootcamps, and ju
u/michaelnovatireplied·★ FEATURED
Hi nice to meet you! Good memory! Yeah Sophie spent several years mentoring at bootcamp and used to operate Buildschool to teach people iOS for free. It was a really small program and she personally worked with each person to learn iOS skills from scratch. From all of these learnings and more, we built Formation as a way to offer personalized coaching to a larger, remote audience, while maintaining the same effectiveness/results as having Sophie there 24/7. The material isn't available, but I would say the real value came from having Sophie (a staff level iOS engineer) working with you all the time.
In terms of learning iOS. The market hasn't changed that much in the past few years and it remains difficult to get a top tier iOS with no experience because it's a "specialist" role. The roles do exist! Many of the former Buildschool members have iOS jobs at top companies now, but it took a little longer.
I would suggest trying the apprenticeship path. LinkedIn Reach has a Mobile Apprenticeship for example.
There's actually a Fellow at Formation now who started an iOS app from scratch that got hundreds of thousands of installs and became a business for the person (we are working with person on DS&A and not iOS). That's another option and a great thing about iOS, you can ship your app to the app store and people might actually use it!
Try building an app from scratch and get it in the app store and just jump right in without studying the language first! You'll eventually have to come back and fill in some of the language fundamentals, but it's a good way to get the ball rolling.
u/cressyfrost wrote (the comment Michael replied to):
How do you conduct performance appraisals as fair as possible?
u/michaelnovatireplied·★ FEATURED
It's really hard. Facebook managers get super stressed and spend weeks on them every year trying to make them fair and people still don't feel it's fair.
I can touch on a few points that Facebook does:
1. Require specific examples in all feedback instead of general statements. e.g. rather than "Susan is always reliable when there are bugs!", "Susan jumped in to help me fix 4 important bugs in the past month, and one of them was a hi-pri bug impacting 10M users".
2. Make it mandatory to have a certain number of peer feedback submissions during the performance cycle, that have specific examples.
3. Create high level guidelines that try to match specific examples of work to behaviors listed in certain performance buckets and/or job levels
4. Most importantly, have a calibration process across different teams and different departments. This happens after all the initial evaluation is done to make sure that in that half and that cycle, people who performed similarly have the same rating and outcome across the company. This is the key step to keeping the process fair. You might disagree with the outcome, but if someone else who performed the same got the same outcome, it's still fair.
u/TheGlassKnight wrote (the comment Michael replied to):
I’m pushing 40 and I would like to get into engineering. I have a BA in CMIS but it’s been years since I’ve done any coding. Where do I start?
u/michaelnovatireplied·★ FEATURED
Hey, two things I would do things at the same time:
1. Look into a short free/cheap online course, like CS50 and get a lay of the land of data structures and algorithms.
2. Look into a short free/cheap online course in React. Like Colt Steele on Udemy, or Odin Project. If you have absolutely no interest in the frontend then maybe look into a similar Python course, like at freeCodeCamp
u/michaelnovatireplied·★ FEATURED
I didn't know him Facebook/Meta, I think we barely overlapped. In general for very senior engineers there are "archetypes" they follow and each one will have a completely different style of impact. I was a "coding machine" because I cranked out a ton of code. Some of the more industry-expert type engineers were more hands off on code. So while I can't speak about Eric, it's possible he's wasn't a prominent "coder" but was a senior and impactful engineer none the less, or it's possible he was a prominent coder! don't know!
u/CodeTinkerer wrote (the comment Michael replied to):
A few observations
* Given that interviews are different from what you do on the job, how do you prepare? I know they can be quite different. I did one interview years ago where they were still doing brain teasers (Microsoft). One where it was kind of a cross between coding a
u/michaelnovatireplied·★ FEATURED
Hey!
* Preparing for interviews is a challenge for most people with experience. The top tier companies general ask similar style data structures and algo questions so if you practice those, you can cast a wide net. The puzzle style brain teasers are less and less common now a days though.
* If you are really rusty, try a book like Cracking the Coding interview to kind of get back in the swing of things.
* I'm a firm believer of the ask as many questions as possible bucket until people tell you are annoying. Most of the failures I see early on are people not asking questions and wasting too much time. So if you ask too many questions people might be a little annoyed but you'll be way farther ahead.
* That said, you should still genuinely try to figure something out first and THEN ask the question about what you did, not about the original problem. e.g. Don't ask "how do I make a branch in git", instead, "I made a branch but I'm getting this error, and I tried what it said in the error and I got this other error, do you have any quick thoughts what I'm doing obviously wrong"
u/Cal1ie wrote (the comment Michael replied to):
I'd like to add to this: I've come from a bootcamp program and I've been a SWE for three years now. I will say, the bootcamp I went to didn't give me a great foundation for my career. It's been quite a struggle, but I'm constantly progressing in my career. I'm self-taught without
u/michaelnovatireplied·★ FEATURED
Hi! Nice to meet you. We're not a bootcamp and we're more like a personal trainer for your skills and job hunt.
The main differences are:
1. We create a personal roadmap of tasks and sessions every week that fits your schedule based on how you did the previous week and the feedback we collect from mentors and assessments.
2. As long as you keep committed to your job hunt, we work with you for however long it takes until you get a new job that you are happy with, depending on your goals, so when you look at the placements on paper they are all top tier companies, the last 10 placements are at: Quantcast, CloudTrucks, Meta, Plaid, 1Password, GitHub, Microsoft, Google, Meta, Snap. And took people anywhere from weeks to months (more typical) to get there.
3. We have many extremely senior, staff, and higher mentors that are extremely successful in their own careers and really passionate about mentoring. You'll work with different mentors every week and get feedback. Over the coarse of the program, you'll work with approximate 10 to 20 different mentors in 1-1 and small group (3-5 people) sessions.
u/Jealous_Ad5849 wrote (the comment Michael replied to):
What did you think of FBs culture? When I worked there I found it kind of cultish - I didn't feel there was a two way street for dialogue. I felt like everything was top down.
u/michaelnovatireplied·★ FEATURED
I think I benefited from joining early enough that most of the executives knew me personally by name and didn't feel like walled off people making all the decisions.
I was also there when Mark Zuckerberg was positively regarded in the public, unlike today, and there was some amount of cult/worshiping type attitude towards him and the company at that time. I've been watching WeCrashed, SuperPumped, and the Dropout, and I don't remember things being that "cult-like" compared to these stories, but when they make the Facebook dramatization, I'll let you know how I feel haha.
In terms of decisions, now that I work on my own company, which is much smaller, I see how hard it is to make decisions and communicate them to the company effectively. Facebook had/has an internal PR team working full time on how to communicate things within the company. I think that does make internal messages feel a little PR-like. But I always felt like I knew these executives a little more like people.
u/T-T-O-M-B wrote (the comment Michael replied to):
Congratulations on the new found fellowship.
Really interested to hear about the selection process.
How do you select candidates? Is it purely based on skill level and professional potential or does personality also matters?
u/michaelnovatireplied·★ FEATURED
Hi, for Formation, it's based on your goals and your current skill level. One way of looking at it in my mind is that you are starting at point A and trying to get to point B and it will take C time (and D cost). We pattern match to your A, decide if we think we can get you to your B in a reasonable C time (3-6 monthsish) and you are ok with D cost. If all those things check out it should be a win-win.
Some reasons one side or the other have not moved forward are:
\- a starting skill level and goal that we don't think we can bridge in a reasonable time
\- timeframes that we don't think we can work on
\- goals we don't think we can get you to (e.g. we can't help with data science)
u/SequesterMe wrote (the comment Michael replied to):
How do I create and log into my account so I can play this game too?
P.S. Do I need a VR headset?
u/michaelnovatireplied·
Formation.dev VR might be pretty cool! We're small and need to focus. Our primary focus is making sure each Fellow we work with achieves their goals.
u/myrcea wrote (the comment Michael replied to):
Hi Michael, what’s your view on end to end tests?
u/michaelnovatireplied·★ FEATURED
My view is that both unit tests and end to end tests are important tools for people to work on a large common codebase.
1. Tests aren't only a tool to make sure business critical logic is correct, but they are a tool to make it so someone less familiar with your code can make changes quickly and safely by relying on the tests in place.
2. I believe testing is also a practical matter depending on the application. Tests are not the perfect solution to zero bugs. So you should always be thinking about what are the consequences of bugs in this code, what might happen, would there be unfixable damage done. So you are ready to both write better tests, and respond if things go wrong.
That said, I have a reputation for not writing tests, but that doesn't mean I don't think they are important.
u/okidokyXD wrote (the comment Michael replied to):
My background is networking/sec/systems admin and I now work as a cloud architect. However I’m constantly debating myself if I should shift more into a programmer role. I coded backend systems that are in production…
What’s your take on system/infrastructure architecture vs soft
u/michaelnovatireplied·★ FEATURED
Hi, the lines are blurring a little bit. DevOps (which I'll call cloud architecture in this response) and SRE used to be a little more separate roles, and while they still are, with the shift to cloud services more companies are placing them all together in the big "software engineer" pool. It used to be back in the day that DevOps would be running scripts on proprietary machines and running around hooking up wires. Now DevOps is like writing complex software to manage generic cloud infra, like AWS, GCC, Azure, etc... So even if some companies don't call that "software engineer" there's a big and competitive market for this role.
You absolutely get exposure to large scale systems and the transition to designing those systems is much smaller than other jumps. You might even find that you are already doing all the right things day to day but might just be missing the theory of why. And you definitely have some stories to tell in interviews!
To summarize the marketplace: all of those roles are in demand. DevOps and Infra/architecture are very in demand, and so are general broad SWE roles.
If you do want to transition for interest-sake, look at a company where DevOps is under the same umbrella as SWE, start there, and slowly take on SWE-like work.
u/SequesterMe wrote (the comment Michael replied to):
Do you miss writing code?
u/michaelnovatireplied·
I write A LOT OF CODE!
https://github.com/mnovati
1,937 contributions in 2022 (so far)
8,887 contributions in 2021
9,165 contributions in 2020
u/okidokyXD wrote (the comment Michael replied to):
What’s your recommendation on getting going with coding each day?
I often times postpone actually writing code as the next meeting is in a few minutes and I don’t want to start if I have to interrupt my flow soon…
With that bad excuse I can go days without coding up anything me
u/michaelnovatireplied·★ FEATURED
Hey! Haha, I'm similar and I usually spend the first hour or two (or three) in the morning working responding to others, unblocking people, and working with our Fellows to make sure they get the best experience possible.
There are probably a lot of jobs like this but coding is both technical and creative. So having a short period of focus and creative juices flowing can result in not just large amounts, but solving hard problems quickly. Other times it's like writer's block and I just can't get the motivation to do something really simple.
I would doubt this works generically, but when something comes up I add it to my TODO list for today and every day I work as late as I need to to clear out the TODO list until it's empty. If I misjudged the size of something, I break it up and add the rest to my backlog to be reprioritized tomorrow.
u/meanguy69 wrote (the comment Michael replied to):
Hi Michael, I'm a Salesforce consultant that would like to make the leap into software engineering.
Do you have any advice on how a Canadian can get sponsored to work in the US?
u/michaelnovatireplied·★ FEATURED
Yeah, I'm from Canada and went through the whole process. If you have a college degree in something related to engineering and took some courses in engineering, or have some number of years of experience programming (even if it's salesforce) then you have a good case to take a software engineering role under TN status. Obviously cannot give legal advice, but look into TN status in more details.
The big companies will prepare TN materials for you if that's the path for you. Some experienced lawyers will vet your degree, experience, and ensure the role you are accepting is a good match for the TN rules for that role and make sure you have all the paperwork you need at the border.
Otherwise you have a few other things to look at. If you do a master degree in the USA you can get a different visa through that. And you can look at working in a Canadian office, Toronto has a lot of offices for top tier companies, and then trying to get an H1-B in the annual lottery and move when you get it.
u/sonne-tanz wrote (the comment Michael replied to):
You are remembering incorrectly. It was a retaliatory measure after surfacing negative feedback about the transport team.
Since lyft profiles were connected to our personal account they were able to see my home address and personal trips. Not my expense reports.
It was an over
u/michaelnovatireplied·
Oh wow, apologies u/FormerFBEngThrowaway, u/sonne-tanz I have no idea what this situation was or any context on this and was talking more generically about HR.
u/Cal1ie wrote (the comment Michael replied to):
Awesome, Is it possible to set up a time to chat more about this? u/michaelnovati
u/michaelnovatireplied·
Send me a DM on Reddit and can chat there!
u/Zoetje_Zuurtje wrote (the comment Michael replied to):
Thanks for answering! That's interesting, I've never considered the messiness/imperfections of the real world a pro, rather than a con.
If I wanted to learn how to code, what would be a good starting point? Currently I'm learning JS at codecademy, but I wanted to know what othe
u/michaelnovatireplied·★ FEATURED
Yeah that's a good start! After you are comfortable with the syntax try doing some React hands on practice: [https://reactjs.org/tutorial/tutorial.html](https://reactjs.org/tutorial/tutorial.html)
If you have some engineering background already and some professional experience in a different area you might be able to do a bootcamp to switch careers.
If you are a student and planning on going to college, I would consider a top CS school and focus on internships each year at top companies.
u/sickofgooglesshit wrote (the comment Michael replied to):
Just reminds me of people at Google with massive LOC counts for doing nothing more than moving protos ;-) I'd be more curious about how you pushed back on a Bad Decision like say, user privacy or simplified an approach to a systems challenge that might have otherwise been a cost
u/michaelnovatireplied·★ FEATURED
My L7 level impact came from not just the raw code output, but pushing the entire company to care more about code cleanliness. This started as the "Dead Code Society" (tshirts and all) to encourage people to refactor and get rid of old abstractions and tidy up. If I stayed longer that might even have evolved into L8 level impact.
u/nutyourself wrote (the comment Michael replied to):
> So I asked as if Michael was Facebook, answering for their sins and for that I apologize.
weellllll... sorry but this is the old "was just following orders" excuse. If you _chose_ to work for the devil, you bear some responsibility. Sorry. Just my point of view.
ps - thanki
u/michaelnovatireplied·★ FEATURED
Replying to the whole chain here. I think the question was fair and didn't take anything negative from it, being closed minded to well intentioned questions just makes it harder to have discourse on these issues.
The story behind this AMA is I did one spontaneously in this hyper-focused Facebook Group about the Facebook interview process, and people had so many questions and I loved trying to answer them all. I was looking into to a similar one on Reddit and this was the suggested place to go! Definitely scary yeah! But I actually am thrilled most of the conversations are thoughtful and good intentioned.
u/CodeTinkerer wrote (the comment Michael replied to):
I've seen less specific questions or questions that say what the want, but not *why* they want it. In a way, asking "What language should I learn" is much better than "I want to learn C++, how should I do it". The second says they've made a decision, but they don't explain why.
u/michaelnovatireplied·★ FEATURED
It sounds a little random yeah. One thing I've noticed is that smaller companies tend to have less consistent and less well organized interview processes, which makes it more confusing for you as the candidate.
A lot of companies won't tell you why unfortunately because it opens them up to legal liabilities if any of those reasons are interpreted as being because of you identify as being in a "protected class" in the state you live in/the company is in, or federally.
u/manicmillions wrote (the comment Michael replied to):
Why are engineers expected to go through grueling multi stage interviews, show "passion" with out of work projects etc. Do managers create gantt charts for fun in their free time? Why can't it just be a job, why is saying you forget about tech when you log off actually offensive
u/michaelnovatireplied·★ FEATURED
Hi! I think there's a lot to unpack so the direction I'll go in is about company fit. There's a right company for everyone (often many right companies) and finding that fit makes you 1. happier. 2. perform better. 3. not even think about work life balance - even if you have great work life balance.
I personally love trying to find that fit with people. A lot of people come to us wanting to work only at FAANG or specific even smaller number of companies. And for some people that's the right fit, and for others it isn't. I love trying to help people find that fit.
u/michaelnovatireplied·★ FEATURED
Thanks everyone for a great AMA! I was honestly a little nervous about talking about my experiences at Facebook since there's a lot of controversy around it recently, but I enjoyed the great discussions.
If you have more questions keep posting on the thread and I'll try to answer with a little slower response time!
Finally, May the 4th be with all you engineers out there!
u/luckyjenjen wrote (the comment Michael replied to):
Is it worth it?
I'm doing a pt degree in computing and maths (but will still have to specialise after doing the degree) aiming at debugging I think . Totally honest - I'm doing it for the money - welding and woodworking ain't getting me a pension...
Don't get me wrong, I love i
u/michaelnovatireplied·★ FEATURED
Hey, I think it's great you are talking your time and doing a degree over a longer period of time instead of a short bootcamp. From my observations, it usually takes people up to 2 years from day 0 to make a real transition in jobs.
A few things, I think you can try to apply your background. Like maybe look at Autodesk as a target company!
Second, don't choose a language based on market demand if you are willing to work remotely and/or move. Choose the language you gravitate towards to get started and build the fundamentals first.
u/davidgrayPhotography wrote (the comment Michael replied to):
They might take privacy seriously on an individual level, but the product as a whole certainly didn't, because when graph search was first introduced, I was able to find users that met very specific criteria. And so was [Tom Scott](https://actualfacebookgraphsearches.tumblr.com/)
u/michaelnovatireplied·
I think this was a bad feature too but that feature did respect peoples privacy settings. The problem was that if people misconfigured their privacy settings a lot time ago and forgot, this would make it instantly discoverable, compared to when it might have been hard to discover in the past.
u/JavaScriptGirl27 wrote (the comment Michael replied to):
I just want to pop in here and say I’m sorry that people are assholes and associating you with Facebook’s worst traits and incidents.
Aside from that, what technologies did you commonly work with at Facebook? Are there any technologies you’ve heard of that are on the rise that
u/michaelnovatireplied·★ FEATURED
Hey, Facebook’s main backend is in HACK (PHP derivative) and their frontend is React with all the bells and whistles. You don’t need to know either to be hired as a SWE. Various backend services are also in different languages like C++.
In terms of interviews you can use any language you want and they are white boarding style, meaning non compilable code. I’m not sure if they have changed this since going remote for interviewers. But people have become reliant on IDEs and whiteboard needs a little extra practice.
u/That_One_Guy2945 wrote (the comment Michael replied to):
Why do this? Haven’t you made enough money? Do you not feel at least a bit remorse or embarrassment or shame for the damage you helped do to our world?
u/michaelnovatireplied·
I firmly believe the world will be a better place with more diverse engineers working at companies like Facebook and Google.
u/Far_Neighborhood_117 wrote (the comment Michael replied to):
Hi Michael, do you think ageism is a problem in tech? There is common hearsay that older people in tech run the risk of getting replaced by young energetic graduates fresh out of college. What are your thoughts on this?
u/michaelnovatireplied·
I would say a common trait with engineers is that they are a little arrogant when they know something, and dismissive of things they don’t understand. I think people who can’t adapt will be replaced because technology changes so fast.
u/The_Woolsinator wrote (the comment Michael replied to):
What up Michael.
Interesting revenue model. Did you ever consider shifting the revenue generation to the employer instead of the employee? (Very briefly looked at pricing so maybe I'm off base here).
Another education and job placement initiative called Launchcode (non-profit
u/michaelnovatireplied·★ FEATURED
Yeah we’re small and focused on every individual having a great outcome right now . Companies do pay recruiters and agencies a lot of money for sourcing so there opportunity. We might explore it. Right now Fellows are making roughly $80K more in comp a year and our pricing is capped and much much lower than that (and is only based on base salary, not stock or bonuses) so it’s been working. But to truly have an impact on the industry and help get more underrepresented engineers into these companies, we’ll have to grow and make sure that we can support more people.
u/vertigosaltwater wrote (the comment Michael replied to):
If you're not entirely qualified to comment, why did you do an AmA ? What is it that you actually are qualified to comment on ?
u/michaelnovatireplied·★ FEATURED
I have opinions on this if you want to hear those :D. I'm trying to comment with high quality answers that I strongly believe will help people. I actually know a decent amount about "the algorithm" but I'm not qualified to comment on the social responsibility of them. I have an academic and I know too many PhD grads in sociology that would make fun of me for trying to comment.
u/RampantAnonymous wrote (the comment Michael replied to):
Do you think it's fair that software have to take months, weeks off in this industry to prepare for interviews?
Obviously, you've built a small cottage industry in this space so you'd be shooting yourself in the foot if things actually changed.
But it's pretty crazy that a doc
u/michaelnovatireplied·★ FEATURED
Hey, this is a really good series of questions that I have thoughts on.
* RE: Formation/the time it takes/business model. Our mission is to get people who have non traditional backgrounds, underrepresented in tech level up into these top tier roles. It takes everyone a variable amount of time. If you are committed to putting in the time you think you need, you are paying us to spend that time more efficiently at Formation. You are paying us for the outcome - to get a top tier job you are happy with. The gaps that are needed vary from person to person. We've built technology to help us figure this out and fine tune the training for these needs. So the interview fashions of the day aren't really that relevant to our business.
* RE: Types of interviews. Data structures and algorithms interviews level the playing field. Google gets like a million job applications a year or something and there are thousands of stacks and frameworks and languages people use. Data structures and algorithms as imperfect as they are, let Google fairly evaluate people.
* RE: Memorization. I disagree with this. It's a side effect of Blind, Leetcode, and to some degree Reddit that people obsess over memorization a list of problems they think they will get at a company. This might get you through a round with a more junior engineer, but trust me, I've done hundreds of interviews and trained people how to interview, and a really good interviewer will cut through the memorization with very unique and sometimes absurd follow up questions. At Facebook, typically at least one interviewer will be the experience kind, often more. This isn't true for all companies though. Amazon has a more variable process that I think memorization might work under certain circumstances. Google definitely not.
u/vertigosaltwater wrote (the comment Michael replied to):
Don't worry about all that college stuff. LEt's do a little interview guerrilla style then. If it's good I'll publish it in a magazine. I have a lot of questions.
What was your reaction to the Theranos scandal?
​
Did you ever think that something like that could ever
u/michaelnovatireplied·★ FEATURED
I did say ask me anything but those questions are a little off topic. I'm too boring for those answers to be relevant haha except why I left in 2017 maybe. Which was just that I like writing a ton of code and to keep progressing at Facebook I had to have drive broad initiatives that would take time from coding,.
u/VisibleEffective9519 wrote (the comment Michael replied to):
Such bullshit I cannot believe this response
u/michaelnovatireplied·★ FEATURED
Wow I didn't realize how downvoted my response was, I might have messed up how I communicated that. I would love to keep trying because I feel the only way we can move forward is try to understand.
What I'm talking about above is let's say Facebook is like "we need to add a new feature to upload files to share with friends". The first response isn't "won't people just pirate things illegally!", "won't people upload porn!" it's literally "how will we make sure the uploader can share this with specific people they want to and from an engineering level, only those people can see this file, ever.".
This is a low level of "privacy" that I think is missing the mark. But I've seen drop-everything emergencies and the most senior engineers working on these problems if there was ever an issue. A privacy bug would be a SEV 1 emergency.
I fully acknowledge this is not on the same page as the concerns above, or else there wouldn't be so much polarization, and am eager to shut up and listen.
u/VisibleEffective9519 wrote (the comment Michael replied to):
The first flaw is that the amount of data that is harvested is way too much and it’s only going to keep increasing with metaverse etc. Were talking geographical location, browsing habits, proximity to other friends/users, the algorithm even collects the amount of time spent looki
u/michaelnovatireplied·★ FEATURED
Thanks for putting int the time to write up your thoughts, I think we can have a good discussion on this.
1. Completely agree, Facebook collects a ton of information, whether the intention is for useful product features, advertising, whether it's secure or not, the fact that they have it somewhere means that there is the possibility for "bad actors" to use it. I would argue that many companies have this problem, like banks, crypto wallets etc... but I would want Facebook to be taking a lead here.
2. There are two things in the second paragraph. Facebook isn't actively misusing data and there isn't a single "algorithm" doing this. This is a misconception that was in the Social Dilemma on Netflix that was represented in a way over the top way. But the second part is similar to point 1. If you for a second assume Facebook isn't doing anything too terrible with this data, what would happen if someone truly evil was. And I think that's another important thing Facebook should answer.
3. Be open minded to more than just only one solution. Maybe that's the best solution but at least leave the door open :D. Google and Amazon do both collect as much information blatantly in the same way Facebook does. Do you have IMDB TV on Amazon Prime? If you watch shows there, you get commercials for products you were just shopping on Amazon for. Apple is building out an ad network to compete with Facebook, they collect a lot of information that they use internally. I think there are ways that all these companies can do a better job and we should hold them accountable. All four make far too much money to not have to give good answers.
u/roflulz wrote (the comment Michael replied to):
Hiring Staff level engineers is tricky - how do you get enough signal during the interview process?
u/michaelnovatireplied·★ FEATURED
Hey, it is indeed! I'll go by interview types:
1. DS&A bar is the same. Often times more senior engineers are a little rustier, but they need to be at the bar.
2. System Design. The candidate needs to have a very strong performance. Both in terms have have many alternate solutions for many parts of the system, but also communicating the solution with clarity and appropriate depth.
3. Technical Behavioral. The candidate needs to very clearly demonstrate that the scope of their responsibilities was on par with a typical Facebook E6 engineer. Typically a higher level engineer or manager would be running this interview.
Overall, a staff engineer doesn't walk in off the street randomly, they have a lot of experience at one or more companies. So very critically evaluating that experience, and checking with references if necessary, will be crucial. Often times someone who claims to be at the E6 level will be down leveled to an E5 (which comp at the high end of the band) if they can't very definitely prove their case. It's always easier to quickly promote to make up for a mistake, than it is to demote or fire.
u/Flimsy_Pop_6966 wrote (the comment Michael replied to):
Hi Michael, I’m sure you’ve worked with some highly intelligent and innovative people. What characteristics (beyond technical skills) do the most successful and easy to work with people have in your opinion? And what other roles have caught your attention over the years as cool a
u/michaelnovatireplied·★ FEATURED
Hi, I actually sat down a while ago and thought about the question and came up with four characteristics that all the best engineers had:
1. Grit: this almost obsessive drive to solve problems, debug, and keep trying different approaches.
2. Curiosity: always figuring out why something works the way it does, rather than saying "it just works".
3. Ownership: taking responsibility for your code and proactively improving it. Not pushing off problems you can solve to other people.
4. Team impact: making those around you better.
The best of the best are incredibly good in one of these in particular.
In terms of other roles: product managers and designers are adjacent to engineers when building products and are important pieces.
u/Frosty_Abalone864 wrote (the comment Michael replied to):
How stressful is working in big tech? Are the workloads and expectations very high?
u/michaelnovatireplied·★ FEATURED
I think it varies company to company. The general trend is that you have expectations for impact (you are paid a lot and presumably have to be generating more value to the company than they're paying you) but you also get a lot of freedom of how you do your work, as long as it gets done well.
Work like balance is definitely something to ask about when choosing a specific company.
u/Noswald95 wrote (the comment Michael replied to):
In all your years with the company, What was the single coolest thing you saw at the facebook office/workspace?
u/michaelnovatireplied·★ FEATURED
Most things that happen at that happen at the office are covered under confidentiality so I'll be more vague.
When I started in Palo Alto, out of school, from Canada, it was pretty cool to see celebrities and important public figures come visit the offices and walk right by. Especially tech role models that most people might not know.
A memorable moment was when a fleet of shuttles showed up during a surprise all hands meeting and took the whole company to see a movie and rented the entire 10 screen complex.
u/a10lber wrote (the comment Michael replied to):
Please explain why anyone would want to work for a large tech company like Facebook?
From my understanding, people are overworked and as a consequence become burnt out quickly, developer changes are typically inconsequential due to sheer system size, you are more restricted on y
u/michaelnovatireplied·★ FEATURED
Hi, I haven't worked there for a few years now, so I'm sure the culture has changed, but when I was there software engineers had a lot respect and leeway to work on their own schedules and prioritize their day to day. The expectations for impact were very high, so people who were not having impact definitely felt under pressure. A lot of people I worked with were used to get good grades in school and they put a lot of pressure on themselves to deliver.
The reason why I see people go there now is the scale. Working on giant systems, working on incredibly hard problems. You can see from some comments how much negative sentiment there is towards Facebook, and people genuinely want to try to make Facebook better.
u/duckducklo wrote (the comment Michael replied to):
Who started the title software engineer from what it was, software developer? Did you notice this trend?
u/michaelnovatireplied·★ FEATURED
I don't know where it came from! Good question. The difference between an engineer and a developer is that typically engineers are solving problems instead of implementing solutions, and coming up with more general solutions instead of using existing ones. At the lower levels, these are more similar, but it's why most higher level people are "engineers".
I might be overanalyzing though, it's ultimately up the company to call it whatever they want.
u/duckducklo wrote (the comment Michael replied to):
How did you know someone was high potential?
u/michaelnovatireplied·★ FEATURED
Hey, good question. I feel like this question comes up as well for seed-stage tech investors as well and they all have different answers to how to spot someone with high potential.
I have two different approaches:
1. Pattern matching against others. So people who had similar projects/experience in the past and seeing how they performed, and projecting if the person might follow a similar path.
2. Particularly unique or interesting experiences/projects/career progression. This might sound like 1. and somethings might overlap, but this is about looking for anti-patterns. People who are so far different from the observed patterns that you want to dig deeper.
Finally, I think everyone is high potential in some ways and finding the right environment to express that is the missing piece that I hope to help solve.
u/pcardune wrote (the comment Michael replied to):
Definitely my most prized t-shirt from fb.
u/michaelnovatireplied·
❤️
u/yokingato wrote (the comment Michael replied to):
Can't believe this thread didn't get as much traction as it should have. Top contributer at Facebook and even just lasting as much as you did is an amazing feat.
My question evolves both your past and current work, but if you were tasked with taking a high school kid from nothi
u/michaelnovatireplied·★ FEATURED
Hi! That's a great question.
There's this ongoing tension that's been around for a while and I don't think what we resolved immediately between a traditional college path and a more self-taught alternative path. Colleges have had a hard time keeping up with the latest and greatest skills that you need on the job, but the top tier colleges still have the most consistent deterministic outcome to getting to a top company out of school. Part of the reasons is top tier colleges accept highly competitive students from top tier high schools and those people might just succeed on their own regardless. But the result is a very strong network of people that keep the cycle going.
Another difference about college is that the top-tier schools focus on academics and to some degree they would love it if you went to do a PhD and stay in academia, so their goal isn't necessarily even to get you into a job. This kind of thinking is needed in the world and we shouldn't just scrap college even if it was provably less effective than other options for getting a job.
At Facebook I didn't really notice a difference between people who went to college and didn't. Facebook didn't care and their hiring process was fairly agnostic to the actual credentials, and rather focused on the skills.
That said I'm talking top tier colleges and top-tier companies and a suggestion for someone would highly depend on their goals, their larger ambitions, their existing experience in high school, and also your geography and family support or friend support, as many many factors so I can't give a general answer.
u/VisibleEffective9519 wrote (the comment Michael replied to):
Except Amazon is strictly limited to shopping preferences. Amazon isn’t built in a way to keep you on Amazon’s website forever. Instagram and Facebook is built that way. Social networks, especially the way Facebook has built them, is manipulative. Why did they remove the good old
u/michaelnovatireplied·★ FEATURED
Amazon does similar things with promoted products. If you watch IMDB TV on your Amazon Prime video you get commercials for competitive products. Behind the scenes it's the same kinds of algorithms.
I agree it's all about buying stuff so it's limited in scope and that is very different from social content.
I have a lot of friends who watched that documentary and were like Michael I can't believe Facebook does X, Y. It's really a very large spectrum and thousands and thousands of independent things going on that is characterized as a person sitting in a control room watching everything you do and manipulating your behavior. That thinking it only polarizing things more and doing exactly what people are accusing Facebook of doing.
u/VisibleEffective9519 wrote (the comment Michael replied to):
How is that incentivising you to spend 8 hours on Amazon? How is google incentivising you to keep looking stuff up? It’s not. Facebook and Instagram is. Not just social content, these platforms are also modifying and influencing your behaviour
u/michaelnovatireplied·★ FEATURED
I agree that that is a different model it's a good point and you are right. The algorithms are similar though, I don't really know how to convince you :D. Youtube recommendation algorithms are optimized to keep you watching endless videos. Amazon's algorithms are optimized so that you have such a consistent experience that you subconsciously choose Amazon whenever you need something. There is a lot going on here. Each case is completely different as you said and that's why we can't generalize anything about "the algorithm".
u/yokingato wrote (the comment Michael replied to):
Thank you very much! I really appreciate your wonderful reply about the education side of things.
I was more wondering along the things you could advise them to learn when it comes to CS. Like what path someone could follow (at school or self-taught) to become a really great sof
u/michaelnovatireplied·
Definitely the fundamental computer science concepts, like CS50
u/Sweet_Item_Drops wrote (the comment Michael replied to):
Hi Michael, thanks for doing this AMA.
If you're still taking questions, how does Formation help fellows find the right fit?
Is there a matching algorithm like the technical one, or do Fellows get assigned a mentor who makes suggestions of what companies to apply for
u/michaelnovatireplied·★ FEATURED
Hey, yeah I'm busy but trying to answer questions!
Regarding finding company fit its both algorithmic matching and your Formation Team human effort (you have a dedicated Fellow Manager and your own private channel with a career coach and engineers, so literally a team of humans to help). The algorithms help make the humans more efficient, so you can get great advice from very experienced people and we can scale the cost associated with having so many senior people on your side.
Everything you do week to week, both the individual activity and the sessions with mentors are mostly algorithmic and again, with your Fellow Manager and our technical team fine tuning things by hand to make sure we dot all the Is and cross all the Ts. Algorithms are much better at scheduling hundreds of unique hyper focused sessions fitting into everyones schedules every week than a human could ever be haha.
The job hunting process is a little less "algorithmic" than the training because it's less in our control - you can get randomly pinged by a recruiter, you have some control over interview dates, but not all. Some people have zero problems getting interviews, and our work is focused on prioritizing and optimizing scheduling, Some people have a harder time getting interviews and we're focused more on finding opportunities. The human side comes more into play. The algorithms are for surfacing potential opportunities from a large pool.
Sorry, long answer and hopefully it's clear, let me know if there are more questions.
u/Sweet_Item_Drops wrote (the comment Michael replied to):
Thanks for the in-depth answer, Michael!
How does (if at all) the combination of the algorithm matching & human team effort tackle things like culture fit for underrepresented engineers? I know everyone is different & has a different ideal environment in mind, so it seems like
u/michaelnovatireplied·★ FEATURED
Hey yeah you are on the right track. There are a lot of factors and it depends a lot on you, what your options are etc... So as you might expect it's a nuanced and multi prong approach
1. Through Formation you'll do a lot of interesting group (3 people) sessions to talk about your experience, background, etc... and help you get the ball rolling with becoming more self aware of what makes you unique. Towards the end you'll do some more intense technical behavioral prep.
2. In the job hunt, it's really case by case and we are driven to help you find a great match as the ultimate goal and do what we need to to have that. So for some people it might be trying to set them up with someone we know who had a similar path to talk to at a company before you interview. Sometimes it takes a little push for options we think would be good but you might not know about. Sometimes it's about how to ask those questions and sometimes it's about how to write emails.
3. Negotiation is a big one that differs based on background. We want to make sure you get compensated fairly to help with some of the systemic inequalities that exist. Some people from a background who haven't had a W2 job really want to accept that Google offer right away on the phone and we help you through this.
Great questions!
u/Sweet_Item_Drops wrote (the comment Michael replied to):
Really, really appreciate the time you took to write this out. Thank you. Lots for me to sit and chew on.
One more question, but not urgent:
>Negotiation is a big one that differs based on background. We want to make sure you get compensated fairly to help with some of the s
u/michaelnovatireplied·★ FEATURED
Nope, the ISA is just a convenient way for people to pay. We often advise people to turn down offers for all kinds of reasons. Our ISA is only based on your base salary and people will very often accept offers with lower base salaries but with way more equity and higher total compensation. Sometimes people just accept straight up lower offers because of company fit (i.e. someone's dream company, and another company tries to compete and outbid them with a larger offer). I've seen time and time again (even to myself at Facebook) where while these FAANG-level offers sound absurdly high in the moment, your long term income will be dictated by choosing the right company that you succeed at.
It's actually a challenge because we work with a decent amount of bootcamp grads later in their careers who had ISAs with like crazy fine print (5 year paybacks, onerous requirements for job guarantees, etc...) who are skeptical of them, but as you work with us giving your 100%, our ISA literally starts the day you get a new job and we work with you with our 100% until then so it's the ideal use case of an ISA, in my opinion. In the future maybe we'll have more options. Our full time team is driven by the outcomes and impact on people's lives more than trying to get every last dollar out of people. Win-wins will always make the company more successful long term.
u/vitaliy-b wrote (the comment Michael replied to):
Hey Michael, thanks for sharing this!
Could you describe E7 scope vs E6 scope? What if I would give you my current scope: Twitter engineer, leading team of 17 engineers, we own several critical Infra services. Doing mentoring, bringing people to the next levels, performing visi
u/michaelnovatireplied·★ FEATURED
Hey, E6 -> E7 is a very large jump. Approximately 15% of the company is E6 and under 2% is E7. At Facebook they have these "archetypes" which kick in at E7, so you have to be solid all around and like exceptional in one of the areas. For me, I was the "coding machine" because I cranked out ungodly amounts of code and motivated others in the process.
I can't comment about Twitter's process, but in Facebook speak, you might be doing great at everything, but you need to now build momentum around your superpower. Are you solving problems no one else can solve? Are you cranking out tons of code? Are you saving millions of dollars via elegant solutions no one else can think of? If you can keep doing what you're doing and then triple down on your superpower that might be the difference.
u/vitaliy-b wrote (the comment Michael replied to):
Thank you for such a valuable and quick reply! In Twitter, we have 'archetypes' too, but I wouldn't say the superpower you described is a must. I would say my superpower candidate is producing elegant solutions you mentioned, by leveraging high-level abstract thinking boiled down
u/michaelnovatireplied·★ FEATURED
I'm not sure in interviews actually. I had interviewed E6s and M2, D1, but never E7s. Back when I was there there were very E7s and most rose from within. At the time, some of the E7+ that were hired in, left after no too long. Part of the problem was that this level is paid so highly at other FAANG and the people have a lot of respect and influence, so it was incredibly hard to get them to leave their companies. Not sure if that changed since 2017... a lot has haha.
So for me, they created coding machine for me and I pushed on my side to have that impact recognized. I have friends who had more naturally recognized superpowers. One person wrote very few lines of code but when he did, it saved tens of millions of dollars. Another was just brilliant. The most straightforward path was archetecting infrastructure that was industry leading (in terms of performance or feature set at scale)
At the end of the day though fairness was #1. Directors and VPs would sit down and try to make sure that people with similar impact had similar levels.
u/michaelnovatireplied·★ FEATURED
Hi! Behavioral interviews are a tough one to give advice on because they depend a lot on your company's goals and what they are looking for in the interview.
For example, at Facebook the behavioral portion was aiming to measure:
1. Scope of responsibility in past job. This is important for determining someone's level. Trying to ask questions so you can compare their previous responsibilities to the different levels at Facebook and pattern match.
2. Past performance. I don't remember if Facebook explicitly trains for this, but I like to try to guage how the person was performing in their last job in some kind of measurements. Like performance ratings, relative performance to peers, awards at previous job that we're rare, etc...
3. Values alignment. When I was at Facebook, the values we're things like 'move fast and break things', and 'nothing is someone else's problem'. I would ask about their work experience and look for examples that align with the values or ask questions if they came up. Like 'wow that sounds like a complex cross team issue, what role did you play in solving it?' or 'you mentioned X was blocked because of another team, what could have done to ship it anyways or work around that'
4. Red flags. Half the job of this interview is looking for classic red flags. Inconsistencies with no explanation, lies on resume, misstated work experience, past HR issues that might be HR issues as your company and we're not addressed, a generally blaming attitude towards everyone/badmouthing all past employers,
u/Accomplished_Lie7430 wrote (the comment Michael replied to):
Hey Michael. I recently found out about formation and I'm really interested in the program. What knowledge of coding do I need to be accepted in to the program? Also, do you guys have a prep course or course work that prepares a prospective student for admission into formation?
u/michaelnovatireplied·★ FEATURED
Hi, we typically work with people with 1 - 3 years of work experience. We aren't a bootcamp or school and don't "teach" like a school does, but rather more like having a personal trainer to get your skills into shape for interviews and everyone needs different things to work on. If you don't have any experience you'll have to have self-taught fairly strong data structures and algorithms for our training to be effective.
You can try a couple of things:
1. Study Guide for interviews. You need to be able to get through maybe the first few sections: [https://formation.dev/join/](https://formation.dev/join/)
2. Benchmark assessment. You can try this to see how "FAANG-ready" your DS&A skills are at: [https://formation.dev/join/assessment](https://formation.dev/join/assessment)
3. 21 day coding challenge. If you want a problem a day to work on and see comfortable you feel. [https://formation.dev/join/challenge](https://formation.dev/join/challenge)
Let me know if you have more questions!
u/Accomplished_Lie7430 wrote (the comment Michael replied to):
I've tried to enter multiple email addresses to gain access to the interview prep material but I keep getting the same error message. The message says " Hmm, we had a problem checking that email, do you mind using a different one?" Do you have an idea as to how I can reconcile th
u/michaelnovatireplied·
We check the email addresses against a spam list, but it's fairly aggressive and might have misflagged you.
Can you DM me your email address and I can try look into it?
u/FinanceLow2491 wrote (the comment Michael replied to):
I am a veteran in the East Bay and looking to do an internship with Acuitus. Have you heard of them? They claim to teach enough information to give me 3-4 years experience. I do know some people who went through and got a job. But I'm still a bit skeptical.
u/michaelnovatireplied·★ FEATURED
I haven't heard of them before but I can walk through how I would look into a program you are unfamiliar with. This is information gathering, not about making judgements each step of the way.
1. Who runs the program/owns it/and why did they make this program? It doesn't matter if it's for-profit/non-profit more so than the reasons it exists. A good start here is to try to find the corporation/company's legal name. If you can't find it, that's not a good sign. You can usually find out quickly if the legal owner is a startup, a giant company, an individual person, etc... and helps paint a picture of where it's coming from. Giant company !== bad, just painting the picture. Often times you can find this on the Terms and Conditions page or Privacy Policy on their website.
2. Google '<program name> scam'. Now any kind of big program probably has some disgruntled former people who claim it's a "scam", but look for like overwhelming numbers of comments, anecdotes from multiple sources as a warning flag.
3. Find former people who did the program on LinkedIn and cold-message them to ask very simple how their experience was, if they would do it again, and ideally find out more about the day to day of what you would be doing for real (and not what the marketing says).
4. Finally, look at the cost, look at what your goals are and if they seem reasonable (i.e. compare yourself to past students and estimate the range of outcomes you might expect from the program.) And decide if it makes financial sense for you at this time. If the program defers payment and makes it feel like you only pay if you get a tech job, watch out for that and read the fine print carefully. If you are learning and the program isn't a scam, and it doesn't work out for you, you should pay something for the time and effort they spent training you, you just want that to be reasonable. But you don't want to emotionally feel like you have "nothing to lose" by signing up, that's not a good state of mind to be in.
u/KoollaxDev wrote (the comment Michael replied to):
Hi Michael, my biggest concern is I am currently a Canadian Permanent Resident (no citizenship yet), and I've had a chat with one of your team members at Formation, they told me that Income Share Aggreement is not applicable in Canada which really causes a barrier to enter your p
u/michaelnovatireplied·★ FEATURED
Hi, the ISA is based on eligibility to work yeah so I don't know if/when that would change, but our mission is to have training that works for everyone just no timeframe I can give.
We don't rely on special relationships necessarily for jobs. We help you find the best path we can for companies to meet your goals. Sometimes that is referrals and sometimes we just help people apply to the right places. But we don't have specific pipelines that you automatically get placed in with specific companies. Referrals also don't guarantee interviews always, and referrals come in many shapes and sizes as well. Targeting most companies in Canada that have a presence or connections to the USA (which is a lot of the top companies) is reasonable. We are less connected with Canadian specific companies.