Not Perfect, but Pretty Good Overall
Pros
Remote work and generous PTO policy provide a lot of flexibility. Managers are flexible and empathetic when you need to "take advantage" of this due to health or personal reasons. This also provides the ability to have a full and interesting personal life, even during the week. Lots of data and interesting problems to solve. Small company means you are able to have meaningful impacts, even early in my career. It also allows for a wider variety of work. I feel trusted to make decisions and contributions. I've had many opportunities to learn new skills and have had the opportunity to have online courses reimbursed. I feel my managers really care about my personal and professional growth, and they advocate for less busy work and more opportunities for development of my skills. The people are quite fun to work with, across the board.
Cons
It can be hard to feel comfortable taking PTO with the generous PTO system, especially if you aren't used to advocating for yourself. You are sometimes expected to "cover" the work of others while still feeling obligated to complete what was originally assigned to you. This is mostly unspoken, but management could do a better job of laying out what is expected more clearly. There is an unspoken culture of working longer hours and weekends. It isn't stated explicitly, but you do feel pressure from seeing others around you working later into the evening and over weekends. As a developer, you will be expected to be sort of "on call" every few weekends. You won't usually even have anything to do, but it can make it feel like you're unable to unplug that weekend. Due to some turnover, it can sometimes be hard to get answers to questions you need, having to dig through code/tickets with very little documentation from years past.