Pros
Pay and Benefits were great and above market average. The hours were flexible so it was not a big deal if I worked later than usual to make up hours.
Cons
I came into the position as a developer with more knowledge of the stack than the tenured personnel, as far as the platform and technolgoies being used. However cronyism and clickish exclusionary behavior by my lead and other personnel on the team, kept me from integrating effective standards based thought processes. My attempts to introduce standards based design into what was a very badly designed system were generally marginalized until a Caucasian millennial on the team validated that it was a good idea while reintroducing it as their own, some time after they laughed at my proposed updates at previous meetings. I consistently found myself being passive-aggressively ridiculed under the guess of a joke, or my ideas undermined by my team lead, who was a subcontractor as well as by other subcontractors within the group that knew less than I did about the technologies with which we worked. Much of my time was spent waiting to get tasking because the lead, who was not qualified for her position and basically would complain about there being "too many objects" when our environment was a Java based SOA development team. Due to her ignorance of true enterprise or senior level Java development experience, she let a socially accepted more junior engineer do whatever he wanted because he was accepted as a local SME on everything computer science. (Also there was a demographic difference such that I seriously considered it an EO complaint situation. I.E. if you are not a caucasian millennial then you are ignored when presenting industry standard development techniques that the unqualified tenured personnel don't understand. So until a caucasian millennial figured out what I was talking about, and re-introduced the idea as their own, the ideas were openly laughed at like some weird jockocracy where I was the bullying target. It was bizarre and I never want to experience anything like that ever again in life.) In all the experience drained me and while I thought I was being jovial and happy to come in to work earlier in the year, personnel around me were just using that joviality to justify their marginalization of my ideas and the little bit of work I was able to get done. I reported these issues to my CACI management, who promptly acted as though nothing was happening at all, and basically gas-lit me about the entire situation. I got no real assistance from management who finally moved me to another team that also seemed to not really take me seriously, as though they were actually just waiting for me to leave, based on the original team experience, and whatever had been said about me behind my back to cover for how I was treated.