I'm currently working on a large enterprise JS application, and enjoying myself quite a bit. We've implemented standards and practices that remove most of the bad parts of JS dev. We are using straight up JS with AngularJS. We are covering our important logic with solid unit tests. We are responding to client requests for features in an agile fashion. The code base is something that could (and will) be documented and passed along to future developers for maintenance.
I read a good book recently, Linchpin by Seth Godin, which helped me adjust my mindset quite a bit. Enterprise consulting can be frustrating. The concept of finding the challenges, embracing them, and truly enjoying what I am doing now has been a boost to my overall psyche. I suffered mightily when the November shit-storm hit the fan. Devpression. In May, I had the opportunity to take a long term Flex position, or this long term JS gig. Despite the heavy reading I did on the subject, I had a strong case of the "Impostor Syndrome". It took a bit to catch my stride, but now I am fully confident that rigorously developed enterprise JS can (and does) exist.
The "bad parts" of JS dev, to me, is just "same shit; different pile." The biggest problems that I face are wet works issues. Human systems. Training, mentoring, and facilitating. How do I, as the "architect," (I deplore this term, but for lack of a better term right now...) tee my devs up for success. Where do we need to be rigidly disciplined in our development, and where can we just run with it? How do we consistently hit that sweet spot in the enterprise software development Venn diagram?
I would have a much harder time with the transition if I couldn't have a firm grip on the rudder, or if I was stuck in an environment that had no will for high quality code. That is what I am looking for. I don't really care about platform/language (this is only half true, I care, it just isn't at the top of the list). I am interested in an org that is dedicated to pushing the quality envelope top to bottom. What I want to do is stand on the shoulders of giants, across languages, platforms and disciplines, with an amalgamation of techniques and practices that fit together to create something greater than its parts. I'm not looking to change the world, but rather looking to deliver high quality and provide for my family with a healthy work:life balance.
How are you dealing with the transition?