3 ms·
For me, I want the freedom to learn new technologies and try out ideas. A humane work environment, such that work is valued and respected - and everyone pulls t
by dack 12y ago
For me, I want the freedom to learn new technologies and try out ideas. A humane work environment, such that work is valued and respected - and everyone pulls their weight. The deadlines are reasonable and the management chain understands the tradeoffs inherent in software development and delivery. If I work on a big existing system, the problems still left to solve should be within my (and the team's) ability to understand but still stretching my current knowledge. Of course, that changes constantly because I am always learning new things.
For a while, I was really into Angular and badly wanted a job where I could just do that full time. I had been mainly doing backend Java stuff at work, but eventually was in charge of a completely green-field project so I wrote it using Angular/Java. However, I've quickly gotten comfortable with those technologies and now Clojure/Haskell/FRP excite me more. Not to say I would write big production apps with them right out the gate - but it would be valuable for me to learn more about them and understand the tradeoffs. I also still haven't written a lot of backend code for massively-distributed systems, so anything involving that would interest me right now (i.e. need for real-time stream processing, mapreduce, sharding, etc).
I also want to work on a team of really smart people - not arrogant programmer-types, but people that know what they're doing. I want to pair with someone and learn a lot from them. I actually like to impart the knowledge that I have while pairing, but I just don't want it to be a one-way street. I also don't want to work in isolation - so a project where I rarely interact with anyone gets boring for me (and especially if the technology doesn't excite me much) will end in me leaving for somewhere else.