Pros
As a new software developer, I learned a great deal from the code of more senior developers. At AmTrust, the training strategy for developers is this: study code from the repositories, and if you have any questions, either Google them or stew over them for a while. It's an effective strategy, if an impersonal one.
Cons
AmTrust's problems stem from the poorly-trained management and no corporate culture. You'll get negative feedback on your performance in the form of tersely worded emails from managers, who don't see the point in face-to-face communication with their team members, and no positive feedback whatsoever. I, for one, had to relay messages between my team lead and another, both of whom had temper issues and refused to speak to each other directly. My team leads and manager were irascible, unapproachable people, and promoted an environment where talking to one another for non-business purposes was discouraged. My team members and I quickly learned that they are averse to so much as being greeted or spoken to in the hallway. While the toxic managerial interactions made working there plenty intolerable, I should also add that AmTrust pays its developers well below the average rate. I know of fellow developers who, after having worked there for years, received no pay raises, despite positive performance evaluations. Further, as a developer, you are corralled into a certain programming specialty without the opportunity to explore other areas of .NET development--either you are a web developer, a database manager, and so forth. They will say you have every opportunity to expand and learn new things, but that is invariably a lie. I found my .NET growth being stunted, since there's only so much new C#/VB syntax to learn on the backend. Do what I did; come to AmTrust for a solid introduction to .NET programming, and then leave.