Ask HN: Out of the frying pan and into...
I recently left a relatively process-heavy client and have started at a company with a very ad-hoc "process". The move was primarily motivated by wanting to change geographical location and reduce work-related stress. A significant salary bump was also involved, but I wasn't hurting before, so it was more of an enabling factor to pay for the cost of living bump for the move.

With my previous position, the client was--it seemed at the time--very pedantic about what sort of details should be included in project scope documents, requirements documents, functional design documents, technical design documents, test plans, and deployment plans. What seemed like a 6 month-long hinderance to a 1-month long programming effort eventually grew on me. When everything was fully specified, everything finished without any major hitches, and when there were hitches, there was a failure in the process to blame, instead of just lumping it all on me. I learned a lot about analysis along the way and had a lot of great successes near the end of my stay with the client.

The client liked me very much and didn't want me to leave. They even offered a permanent position, but were not willing to give me a salary bump of any kind (they were actually asking me to take a $10K hit, when they would be saving about $100K after getting rid of my employer's consulting fee). Being in the construction equipment manufacturing industry, they were hurt pretty hard by the real estate bust, had massive layoffs throughout all departments, with the resultant huge bump in expectations for productivity. I was the technical lead in a team of 2.5 (1 manager, 1 technical (me), and 1 part-time support person) on a project that should have had a team at least seven (I estimated 1 manager, 1 technical lead, 2 programmers, 2 support people, and 1 tester). I provided other services for the client, including interviewing potential new hires, iterating process policy, and performing analysis for other projects in emergency situations.

I wanted to move from the rural central PA to Philadelphia, and I also wanted a higher salary to better reflect my growing responsibility from rank-programmer to all-around-analyst. I got in contact with a recruiter, outlined what I was looking for, and several months later he called me back with a "fit".

There is a saying that you "don't know what you've got until it's gone". Whereas my previous position was a high-pressure environment because we actually had more work than we could handle, the pressure and stress at this new position seem more focused around poorly managed expectations for productivity in the face of next-to-non-existent project documentation. Most of my time so far has been spent on bug fixes, fixes for bugs that should have never been introduced if a proper development process--hell, ANY development process--had been followed. Everything I've done so far has been specifically what I told the recruiter I wanted to avoid.

I did get to move to the location I wanted; I'm half an hour from center-city Philadelphia and 5 minutes from some of my best friends. It's a 3-month contract-to-hire, but while I'm on the contract I have more than my desired salary, recent talk (after my butt was in the chair, of course) has indicated that I won't get my minimum requirement once I convert over to a permanent position. Benefits appear essentially identical to my previous position, which is to say "adequate, not great".

Okay, that's the long of it. I'm just so confused right now. I don't know what to do about this new position. I don't want to move "back home", but as a last resort I know my old client would take me back in a heart-beat. I'm afraid of a situation similar to the last time I was in an ad-hoc development environment: getting constantly blamed for bugs that are actually business logic errors due to lack of spec. Is there a way to manage expectations in such an environment? Should I go back to the recruiter? Should I do it now or after the 3 month contract is nearly up? I have contacts in a number of different places that I could probably end up with a position very quickly, but again, not doing what I want to do and not in the city I want to be. I want to do commercial software development, I'm tired of the malarky that comes with consulting work. Am I stuck in consulting work? Am I just whining?