← Timeline

"Software Engineer" is a very loose term lol

r/codingbootcamp

u/michaelnovati replied ·
It is indeed a broad term (in the USA, different elsewhere). It's also why there is so much range in salaries and experiences that "software engineers" have. I'm a little bias because I come from the FAANG background, so I think the "canonical Software Engineer" is someone who works at: 1. A product/technology first company - the business follows from the product 2. Engineers are empowered to make significant decisions and/or the decision makers 3. The founding team has significant technical talent and technology is in the DNA of the company 4. General compensation and leveling is vaguely consistent with the other simialr companies. This is beyond FAANG and FAANG+ to a very large number of companies. But I consider software engineers in this kind of environment to be the more canonical type of Software Engineer CS students think of becoming when they graduate in the traditional pipelines. And all other software engineers/developers/analysts/consultants/etc... to be more like the unregulated case by case. When Meta interviews someone for example, if the previous company was one of the canonical ones listed above, they would generally match your level to that company with some simple mapping. For non-tech companies, like the other bucket, it would be zero assumptions and a case by case analysis of the person's experience through a hiring manager interview, to figure out what the job means in "canonical tech"