Pros
Varied client work — Different clients and project types, which keeps things interesting.
Real project mobility — You can move between projects when you advocate for yourself (within reason).
Approachable leadership — Senior leaders are open to conversations if you reach out.
Good development resources — Plenty of training and growth opportunities if you take advantage of them.
Strong teams — Colleagues are smart, capable, and great to work with.
Entrepreneurial environment — New ideas are encouraged, and there’s room to take initiative.
Kontras
Long hours vary by project — Like most any professional job, some engagements require extended hours for prolonged periods, but work–life balance really depends on the client and team.
Additional internal responsibilities — Depending on level, there can be a significant amount of firm‑support work outside of client delivery.
Domain alignment not guaranteed — You may not always be staffed on projects that match your domain expertise.
Coaching alignment constraints — Coaching relationships are tied to domain, which limits flexibility in choosing formal mentors.
Long engagements (sometimes) — Some projects run for long durations or through multiple extensions. It can provides stability but may reduce variety in client and project experience depending on what you’re looking for.