See my more recent question: Is programming as a profession in a race to the bottom?My last shop did not have a process.  Agile essentially meant they did not have a plan at all about how to develop or manage their projects.  It meant hey, here's a ton of work.  Go do it in two weeks.  We're fast paced and agile.They released stuff that they knew had problems.  They didn't care how things were written.  There were no code reviews--despite there being several developers.  They released software they knew to be buggy.At my previous job, people had the attitude as long as it works, it's fine.  When I asked for a rewrite of some code I had written while we were essentially exploring the spec, they denied it.  I wanted to rewrite the code because code was repeated in multiple places, there was no encapsulation and it took people a long time to make changes to it.So essentially, my impression is this: programming boils down to the following:Reading some book about the latest tool/technologyThrowing code together based on this, avoiding writing any individual code because the company doesn't want to maintain custom codeShowing it and moving on to the next thing, as long as it works.I've always told myself that next job I'm going to get a better shop.  It never happens.  If this is it, then I feel stuck.  The technologies always change; if the only professional development here is reading the latest MS Press technology book, then what have you built in 10 years but a superficial knowledge of various technologies?  I'm concerned about:Best way to have professional standardsHow to develop meaningful knowledge and experience in this situation
Is as long as it works the norm?
career development;skills
You've indirectly stumbled on what I think is the key aspect to being a good developer: striking the balance between as long as it works and well-engineered, elegant code.Just like in politics, it is much easier to stake your position on one end of the spectrum versus taking a nuanced position in the middle. The majority of developers I run into fall into one of two categories: coding cowboy hacks and architecture astronauts. I try to strike a balance between the two. It's not as easy as it sounds.To more directly answer your question, yes, I think as long as it works is often the norm. But look at it another way: you're in an excellent position to educate your colleagues and try to introduce some better practices. But don't go to the extreme, and remember why we're all doing this: to solve our customer's problems.