Pros
If you are being hired for a specific billable role, you will work very closely with the client and should be fine until the end of your project. But once you roll onto the bench, begin to look for another role immediately, or you will be let go. You will work with some great people, and could have the opportunity to work at some major telcos. There has been a recent push to increase communication, which has been the first initiative in awhile to actually be carried through to execution.
Cons
As a small privately owned consulting company, the business is completely under the direct steering power of the owner. This would be fine, except the owner is very erratic, abusive and micromanages even the freshly-hired analysts. Do not mistake it for "great visibility" - you gain nothing from this type of oversight. The business is shrinking - turnover is abnormally high, the large clients that were keeping the business alive over the past 15 years are leaving (as evidenced by the company's shrinkage), and the company is not gaining any new business. This company is extremely misguided and markets itself as a "consulting company" but rarely finds any success in consulting engagements, and instead has to rely HEAVILY on a more staff-aug based business model. There is zero company culture, and since a majority of the company is offshore, you will be expected to take calls at 7am and again at 10pm (office hours from 9am-5pm), so work-life balance is minimal. They do not give bonuses, and other benefits are very below industry average. A story to summarize the culture/model/ethics at this company: they once hired an individual straight out of college - they had no role for this person, either billable or corporate, so this person assisted whomever they could to help provide value. This person was professional, capable, and intelligent, but after 3 months of being with the company, they were told to find a billable role with the client or they would be let go. It is incredibly ignorant to expect someone with 3 months experience to find a position within a client, when this company will not provide you with any channels to interact with a client until after you have been signed on for a role.