I&#x27;ve worked at sv companies of all sizes, and I think that for a fresh grad especially, the most important thing as some have stated is to find a team (manager, coworkers) and project that are right for you.  You want a place where you will be supported, where you will have interesting work, and where you&#x27;ll be able to develop in all the aspects (not just technical ones) that you&#x27;ll need as a more senior developer.  You&#x27;ll want to avoid toxic cultures and places where no real work gets done.  In companies of all sizes and stripes there is a huge amount of variation internally. Unfortunately it&#x27;s often difficult to know what a particular team is like unless you know an insider.  This advice may seem like common sense, but in my own experience and through talking to junior colleagues, many people don&#x27;t have much of a clue for what to look for in a job (beyond - they pay a bit better &#x2F; I&#x27;ve heard of them and its a prestigious name &#x2F; I have some idea about what they want me to do and it sounds vaguely intetesting).<p>For fresh grads there is almost no negotiating room on compensation.  Additionally, what one learns and experiences is critical to career growth.  At one sv bigco I got paid intern level wages to manually label machines in a server room for a month (hired as a developer).  I&#x27;m sure this is not represent tative of that company.  At another bigco I have seen fresh grads and interns get plum work assignments (and pretty good compensation, according to surveys), and I know that&#x27;s not the case for many other parts of that company.  Neither of these companies is appamagoogsoftbookflix, but I know both these scenarios can be found pretty much anywhere.<p>Even midcareer professionals should care a great deal about the people and projects they will be working with, but there the ability and need to optimize compensation can be more acute.  So, avoiding optimizing for compensation and company prestige early in ones career is something to be cognizant of.