Pros
- Work-Life Balance: Other than build nights, I never had to work on weekends or work super late. - WIT: This was a great group to get involved in; I met some great people through here. - Compensation: The compensation straight out of college was pretty great all things considered.
Cons
- Very difficult internal mobility depending on what team you start on. I asked my manager and team lead to change to a different team and was intensely gaslighted regarding the process. I asked upon joining the company if I could be on a different team from when I was an intern and was told that it could only be done by my manager and/or team lead. The process is unfortunately a bit of a mess. - Project Management is nonexistent. Projects don't have timelines that engineers and PMs stick by and half the time it feels like you are just wading through a project with no end in sight. Sometimes you are working on multiple projects at once (the max I remember during my time was 3) and there is no celebration of accomplishments; you just move from one project to another project, to another project... As you can probably imagine, this leads to a burn-out culture that not even a few days off can fix. - No support for mental health/neurodivergence from managers/team leads in my experience. I've heard a few managers & team leads existed on other teams who were better with this, but overall EQ should be a focus for managers moving forward. Which brings me to... - Please stop taking senior engineers and making them managers especially when they are the most experienced with the code base; all their time is taken up by managerial duties and it is incredibly difficult to get a hold of them for questions or concerns. Attrition is sky high, and there is no one to mentor new engineers with this model. The team I was on consisted of 3-4 engineers that were straight out of college with people who had been in the industry for 2 years mentoring interns and individuals who had been in the industry for just 1 year. This is not sustainable. - It's difficult to learn new technologies. Teams are stovepiped into certain roles and if you want to expand knowledge into other technology spaces (think DevOps/Data Science/etc.) it is incredibly difficult, especially given the difficulty of moving to different teams within the company. - As other individuals on Glassdoor have mentioned, your hard work isn't celebrated. You will be on the same track as your peers regardless of your work output. - Last but not least, and this a personal gripe of mine, the web framework that Alarm.com uses is so rarely used in the front-end/full-stack engineering industry that I have had to explain to hiring managers and other developers what it is. Given this, if you are looking for transferable skills and are looking to work with popular modern web frameworks you may want to look elsewhere. Overall, this company's current practices are not conducive to growth for engineers, and I believe it would be best for individuals out of college to look elsewhere for opportunities that will have mentorship and provide engineers with the ability to learn new technologies so they can grow; I wish I did on retrospect.