Pros
- Salary is great for a mid-western city. You can enjoy a nice luxury apartment for a fraction of what it would cost in other big cities. Or pay off your college loans. - Experience in a big corporate environment. You will learn important skills like taking ownership of projects and conflict resolution, good things to put on a resume - Good, affordable food on campus. Epic has an in-house culinary team.
Cons
- Terrible dev ops with a lot of spaghetti code. You will often deal with a slew of errors completely unrelated to your code and this is completely normalized. Ultimately, you will be blamed if your work takes longer because of these errors. - You will code much lesser than you would at other companies since 50% of your time will go into writing design documents, making powerpoint UI mock-ups and arguing over a button's border style with 10 other people in the room. - Absurdly long training (3-6 months). You will not be contributing anything during this time but instead learn things you will probably forget and have to re-learn anyway. - No concept of promotion. You are either a Software Developer or a manager (no level 2 or anything). There are engineers who have been working for 10 years at Epic who do the same tasks a 1-2 year tenured dev would do. It's harder to convey your professional level on your resume when switching jobs. - Toxic culture. My manager had unrealistic expectations. There is no path for conflict resolution since HR will always take the manager's side. Switching managers is nearly impossible in that scenario. You might luck out and get a good manager but the fact that the bad ones are not weeded out says a lot.