Vantaggi
So MITRE is a tough nut to crack. There's a lot of excellent things, a lot of terrible things, and a whole lot of meh in between. Honestly, your experience at MITRE will be 99% dependent on which department you join. Some departments are focused on systems engineering (i.e., you read and write requirements documents while maintaining SharePoint all the time) while some do advanced prototyping (i.e., you do cutting edge research that is several years more advanced than anything in the public sector). Don't trust what you hear in interviews about what work you'll be doing; if possible, ask someone who works there about the department you're a candidate for. MITRE is a not for profit and thus doesn't build "products". However, it does develop "operational prototypes" which are basically products in all but the legal sense. You will spend time maintaining software. But you will also have the opportunity to work on a wide variety of projects and rotate between them every 6-18 months. Every now and then, you do get to work with someone that is crazy good. I mean, they invented technologies like HTTP or SMTP. That part's awesome and not likely to be found outside of places like Google. The work life balance is excellent. You have a flexible schedule, managers rarely set hard deadlines, and it's unusual to put in more than 40 hours at a time. And they've been reducing benefits gradually over the last several years, but they're still better than your average company in terms of paid time off or responsibility entrusted to young employees.
Svantaggi
Pay. Pay sucks. When you come to MITRE, you will receive a fair offer that will be market competitive. However, your yearly increases end up putting you well below market in 3-4 years. So you you ask -- "why do people stay rather than leave?" because make no doubt about it, over half the company has been there for 15+ years. This answer is two-fold: 1) you are a mediocre engineer and frankly couldn't get a job elsewhere 2) you are an absolute rockstar, best in the world, and on a really kickass project that you absolutely love. Unfortunately, MITRE is on a trend towards more #1 and less #2. Frankly speaking, they're a not for profit and shouldn't be expected to be competitive in pay since they make up for it in work life balance, etc. But there is a trend where the old talented engineers are retiring, the young talented engineers are moving to startups, and you end up with under-performers who would be fired at any other company. Another reviewer put it best -- "MITRE is a great place to work as little or as much as you want". MITRE is that now ex-girlfriend that you wish you had ended things with several years ago. The company is convinced it's not a software shop but in several of the departments, that's just not true. And common software development practices of testing, continuous integration, using source control, commenting code, etc. are just not followed. The promotion process isn't great. You basically put in your time rather than being promoted based on performance. For example, if you have a masters and come in as a level 2 (e.g., software engineer), you'll hit level 3 (e.g., sr. software engineer) in 18-24 months regardless of how good you are. Going from level 3 to level 4 will usually take 5-10 years and again depends more on your networking ability or department rather than skills. So if you're a rockstar engineer who wants to do good things in the world, get a job at MITRE (let me or someone else validate the department / project you choose!) However, you'll do yourself a disservice in staying there longer than 3 years which sucks because, as a rockstar, you'll be on a really fun project. Alternatively, if you're not the best engineer (or prioritizes life over the job) who wants to pull a decent paycheck for the rest of your life, this is the company for you.