10 ms·
Life's too short to write shitty software
- blowmage 15y agoTruth.
- daeken 15y agoAt the end of the day, you should be having fun. I lost sight of that for a long time and wrote a lot of software that I thought would make money (it didn't), but I hated working on. This led to me falling out of love with software for a long while. It's only in the past few months that I've really come to love it again. Between my day job at Mozilla, working on ridiculously fun optimizations, and a startup that went from no code to a damn near fully functional product in a week and a half (including the time it took to build the framework that the product itself is built on!), I've been having a blast. I forgot how fun it can be to just dive in and make shit work, and do it in the way I think will work best. I spent years over-thinking my development, with nothing to show for it; a couple months of coding with reckless abandon and I'm happier and more productive than I've been in damn near a decade. Stop hating life, go have fun.
- eli_gottlieb 15y agoHow do you get a day-job with Mozilla optimizing code (or do you mean writing optimizers and optimizations?)?
- daeken 15y agoSo, most of what I do is optimizing the graphics stack on Boot2Gecko (Mozilla's new mobile OS). That ranges from coming up with new techniques to offload work to the GPU to digging deep into code to find slow portions and optimize them until my fingers bleed. As for how I got it, a friend on the team prodded me and told me about the project, and during the interview process they found out that I had fairly deep knowledge of graphics optimization, and it just went from there.
- kevingadd 15y agoThere's always stuff to speed up in gecko, and mozilla has a jobs page! :)
- dylanpyle 15y agoI subscribed to the StartupDigest newsletter to keep track of local happenings. Content aside, every week their email begins with the same line, which becomes the snippet that GMail shows in the preview. "Life is too short to work at a boring company". Quite a reassuring reminder.
- kirinan 15y agoIm sitting my in my cubical hating my job right this moment. I applied to ycombinator and I will escape cubical hell. If you've never held a corporate job, you are lucky. It sucks your soul and crushes your dream. The anti-ambition of people around me is discouraging and depressing. I work on software that is meaningless, and that just kills you inside. Its the feeling that you are spending days/months/years of your life not adding value to society but simply writing software that doesn't matter because odds are it will be shelved for another project when an upper manager decides that it was the improper path for the business to go down. I wake up every morning excited for my lunch break because I will get to escape into a book on some assorted topic in order to gain the knowledge to escape this hell hole. Yet, the fire inside me won't be quashed and I will escape it. I refuse to feel like this my entire life. I will get out and I will change the world with my talents. That feeling, that fire, keeps it bearable.
- Delmania 15y agoI'll have to express the opposite sentiment, I am sitting in my cubicle overlooking a river. I've got VS2010 and Eclipse open, and I've got 5 different browsers installed in my machine. I was previously working at a smaller company (closer to a startup), and while I enjoyed it, there was no career growth potential, at all. When I moved to Mega Corp, I found a place that actively encouraged career development. Also, our technical leadership is always evaluating the latest technologies to see which ones make the best fit for our offerings, so while I may no be using the latest JS library on Github, I'm using more than a few of the more accepted ones.
- kirinan 15y agoI don't have a window near me, although that may give me a bit more Zen than I Have now. I get loud support people near me instead. We are stuck in the 90's with our technology and are a Microsoft shop. We do have "career growth" opportunities, but they are the standard tuition reimbursement kind (which are fine). There are great corporations to work for (Google, SAS, Facebook), but the majority of them are soul crushing boring with no care or love for the developers.
- bri3d 15y agoThe basic idea of this article is awesome - right now is certainly the right time to get a non-shitty job. However, I disagree strongly with the idea that startups are some sort of panacea for bad jobs. There are plenty of bad startup jobs, and they're generally easier to get than a corporate job. It's easy to talk yourself out of the bad corporate job somewhere in the 5 levels of HR review and background check. It's harder to argue with "free beer, flexible hours, $90k, and you start Monday" - even if none of the above end up being true.
- Roboprog 15y agoSome corporate jobs are better than others. There are cheap-skates, and those that will reward talent. But if paperwork kills you, it won't work, no.
- wpietri 15y agoI agree that not all startups are good. But I think your odds are better at a startup. At IBM, you're 0.00025% of the company. At a startup, it's more like 10 or 20 percent. You have a lot more ability to shape your job and the company so that it's non-shitty.
- mkramlich 15y agoFurther: if you're at a large company and do something that saves/makes that company say $5M, you will get somewhere between 0% and 0.00025% percent of that money as a bonus. Whereas if you're at a startup, and have 10-20% ownership, then when you save/make the company $5M, there's a good chance you will get 10-20% of that. (Speaking in rough terms, of course. But you get the point.)
- Drbble 15y agoDo you have any backing for that? Usually at a big company, your team makes the 5mil. Good luck conjuring 5mil at a small company with no scaling infrastructure and few users. And not working for a CEO or CTO or whoever who takes credit for your work. Sure it's possible, but it's a gamble not everyone feels like taking.
- paulc 15y agoI have looked in the mirror every morning and asked myself: "If today were the last day of my life, would I want to do what I am about to do today?" And whenever the answer has been "No" for too many days in a row, I know I need to change something. - Steve Jobs A couple of years out of college I started living by this quote and it has worked out great for me.
- peacemaker 15y agoI really enjoyed that speech too, in particular this quote. It can be hard to live by that quote though, especially when you have a lot of responsibilities.
- deleted 15y ago[deleted]
- Roboprog 15y agoWhile I sympathize, my wife and kids need to eat now, not in 2 years when I pull equity out of an IPO. If you can avoid the TPS-report-factory-factory (wink), by all means do so. But don't look down on those who are doing what they have to. There's something to be said for knocking off after 8 hours, and going home to one's family as well. What I do is technically boring, but necessary, and doesn't consume my personal life. I don't have to spend 2 hours each way going to work through bay area traffic, either. Yeah, I'd love to be building something super cool from scratch, but that lifestyle has a cost, as well.
- pelemele 15y agoIf you are sure that you will be able to market yourself after years of working on some no name corporate stuff, by all means. I've been there and seen guys working 10 - 12 years at the same company, enjoying their 8 hours shift just finding out one day that they are not needed anymore - and with obsolete skills set (you get into comfort zone pretty easily in corp world), some of them having really difficult time to find another job.
- fusiongyro 15y agoI have a hard time imagining that this guy reading HN is going to let his/her skills become obsolete. Besides that, was there really no writing on the wall? They really had 40 hours of work to do every week, and then suddenly none, with no warning?
- pelemele 15y ago1. Comfort zone - if you ever worked in corp world you know what I'm talking about (he mentioned that he enjoys family time after 8 hour work shift so I would like to know how he keeps up to date with skill set). 2. I've seen it myself at least two times - no warning, nothing. Thank you for your service, here is you severance package - 2 weeks of pay and application for COBRA coverage.
- mhurron 15y ago
- geophile 15y agoI joined my first startup in 1988. My previous company was acquired by Xerox, and I met "lifers", (in their 60s, worked there since graduation, looking forward to pension). I didn't want to be a lifer. My parents thought I was nuts for not going to IBM. My wife was working at Digital, and hating it. She encouraged me to go to the startup. Which I did, and I'm still doing startups 25 years later. (I predicted that my startup would be in business when Digital no longer existed, and for a short time, that was true.) At that first startup, I formulated a very simple test for deciding where to work and what to work on. I ask myself: Am I having fun? Am I creating something new and valuable? Am I being rewarded adequately? (i.e., financially). This has worked out really well. I've worked on and shipped really interesting software, I am constantly learning new stuff, and it has paid off nicely.
- bricestacey 15y agoI've met a lot of "lifers" too. I worked at UMass Boston for a few years and it's depressing. It's like working with indentured servants.
- edwinnathaniel 15y agoThis piece of article is definitely targeted :). Kind of like self-help but for geeks. Nice SEO though. That aside, I believe people can find a niche developing software targeting these soul-crushing jobs. Basically have a product that solve problems people hate to deal with. Java EJB 1.0 and Struts sucks? Write your own framework, call it Spring Framework: worth $400M. JDBC sucks? Make Hibernate. Dealing with Rails deployment sucks? Cloud hard? Come up with Heroku. Silo-ed web-apps, always have to custom build CMS and comes up with your own workflow? Build SharePoint: $1B market. Configuring and maintaining WordPress are not interesting? I heard WPEngine is making money left-and-right... I learned that before you can call yourself a real entrepreneur, you should learn to get over yourself on these "shitty" stuff because what if you got your dream job but is interrupted with "shitty" stuff in between? Call it quit again?
- gaius 15y agoJDBC sucks? Make Hibernate. Because JDBC didn't suck enough...
- dstywho 15y agobecause Hibernate is awesome!!
- peacemaker 15y agoYour last sentence really hit the nail on the head. Start-up or corp, you'll have plenty of shitty times along with the good. It's an attitude issue. The right attitude towards the bad (and good) things will make all the difference to your happiness in life. What people often forget is that they are completely in control of their own attitude towards life too. The way you react to situations around you can be a positive influence instead of negative if you want it to be.
- Roboprog 15y agoYou so hit the nail on the head: being awesome by doing CRAP that nobody wants to do, and making it into something easy. Interesting book called "The E Myth" about entrepeneurship about 20+ years ago, talks about the myths of freedom to do more "worker" stuff, and the reality of building a business to provide a consistant user experience and a system to enable the workers to provide it. Seems along the same vein.
- edw519 15y agoFor those of you now browsing Hacker News at his cubicle during his break under soul-sucking fluorescent lights: You can have it both ways (work for BigCo and build cool stuff), but it's not easy. You have to make it happen within the corporate systems and structure. I have many times. A few examples: - Boss to me: "Purchasing is complaining that the legacy system isn't doing what it should. Go find out what they need." 3 weeks later, my prototype is the basis for specs for a whole new system. "But you told me to." - PM/BA to me: "I can't make it to the status meeting. Will you run it for me?" "Sure." Results: 3 new projects at the top of my queue. What the customer wants most and what will be fun to build. - Big Boss in meeting: "I don't think corporate will approve $2 million for a Data Warehouse/Business Intelligence system, but we have to do something." One month later, after squeezing it in to my spare time: an MVP of a BI system that the users love and was fun to build. Now I get permission to finish it. - Another boss: "I would love to sell our stuff on Amazon, but I don't know how to go about it." Me: "Want me to find out?" Boss: "Yes." A month later, we're on Amazon. Fun project. - User VP: "Why do we have to wait 3 years to get anything done on our legacy system?" Me: "Send the quick critical stuff directly to me. I'll try to push it through faster." Almost always leads to building something cool. The 3 keys to doing these kinds of things: 1. You must find the cool stuff to build yourself. No one's going to hand them to you. Opportunities are everywhere. 2. You'll probably have to make time for extra work. Shouldn't be a problem if you're a good programmer in an enterprise. 3. You'll probably have to hang your cool new stuff off something legacy. So what? Maybe not as good as building something in a startup for the first time ever, but building is building. You can find a way to build cool stuff from whereever you are right now. "Finding a way" is the key.
- Poiesis 15y agoA startup's not a panacea, but--man, he sure knows what buttons to push. This is for the guy who browses Hacker News at his cubicle during his break under soul-sucking fluorescent lights ...that's 10 hours of your workday that is devoted to your job. The Java Struts web app that you're working on needs to be able to support IE 6, especially because you're not able to install Firefox or Chrome on your locked down desktop. I could add so much, but he's got the big ones. How about "browsing HN from your smartphone because of the proxy"? We're actually working startup hours here, so combined with a large family it's difficult to get the time to work on the side project. Luckily there are people out there who have demonstrated that it can be done under similar constraints (looking at you, Patrick).
- benblodgett 15y ago"This is for the guy who browses Hacker News at his cubicle during his break under soul-sucking fluorescent lights." Described my previous-life to a T, best decision I ever made was leaving those fluorescent lights.
- danso 15y agoSmall caveat: the OP claims that the WSJ named "software engineer" as the best job and links to this: http://online.wsj.com/article/SB10001424052702303772904577336230132805276.html?mod=e2tw http://online.wsj.com/article/SB1000142405270230377290457733... Actually, WSJ was just reprinting a listing by a company named CareerCast, whose metrics are a bit suspect.
- mjlangiii 15y agoThanks for the article; back to the florescent lights for now. Soon...
- alttab 15y agoI started at what is probably the "very very large software developer in RTP" (there is only a handful of them), and I visited Hacker News every day under the terrible lights. I've since quit and never looked back. Start ups are definitely for me. I'm already making more than I did at Initech.
- Khao 15y agoI lived mostly the same story as this guy, except I was working in a startup when this happened. I was working on great software, but I hated my job and hated everyone around me. And yet I joined this startup because I felt it would be the best job ever. I was so wrong. I finally left for BigCo afer 6 months and I plan on staying there for years and years because this job is incredible. We write the most beautiful software and the team is simply amazing. And it seems every week I see my old colleagues post status on Facebook along the lines of "Look at us, working hard into the night!" at 9 or 10pm. They seem to take pride of this sort of thing. Now that I'm at BigCo, I get to leave every day at exactly the same time and 3 days / week I have activities planned on my evenings that I will never miss again because of overtime. Just remember that these horror stories of "I hate my job at BigCo, let's join Startup and everything will be better" can go both ways.
- debt 15y agoI can hear the chorus of HNer's working at startups saying "yeah, but just wait until we go IPO or get bought or go viral then you'll see why we worked so hard so late so often for so long..."
- joe24pack 15y agoit's also a risk that might not work out.
- Khao 15y agoI prefer having time for myself rather than killing myself at work hoping that it will pay out. If it does, great for you! But if it doesn't, all those years you've worked your ass off and didn't have time for yourself and people close to you will never be given back. I have my good salary at BigCo and I know that the moment I leave the office, I don't have to think about it. I think this work / life separation is really important (to me at least). I don't personally think that what you do at work represents who you really are, and having activities outside of work defines you way more than that thing you do from 9 to 5 to earn a salary. In the end, a job is only there to provide you enough money to pay for your lifestyle. If your personnal goal is to be crazy rich, then go and work your ass off like crazy for years. But when your job pays enough that you can keep your current lifestyle and you like what you're doing like this, I don't see anything that would make me leave BigCo for a startup filled with dreams of being rich.
- lnwilliams 15y agoLove, love, love this post. I'm not a hacker so to speak but I can totally relate. I've always had an entrepreneurial spirit and NEVER wanted to be a lifer who spent 20 years bored to death making someone else's dreams come true. And, I think that spirit is the trait that marks the startup generation and the reason posts such as this resonates with so many.
- MatthewPhillips 15y agoI think a more general piece of advice is to work somewhere where the software you write is the product. For corporations, the programming department is a cost center.
- dstywho 15y agoI read this while I was writing my TPS cover sheet.
- cpeterso 15y agoThe "non-shitty" software the author works on is an ad-serving platform. Advertising is only one or two steps above TPS middleware.
- kacy 15y agoThat hurts a little. Sorry you feel that way. :-/ I particularly enjoy working on the technical challenges, but to each his own. Cheers.
- cpeterso 15y agoI'm sorry. My comment was supposed to be funny, but it was just rude. Thanks for calling me on that. <:\ All kinds of software can be shitty or non-shitty. I appreciate the call-to-action to developers stuck in the "trenches" of corporate software development. The "C++ coding mines", as one co-worker put it. I just feel the world is inundated with advertising and I hope inspired hackers have the opportunity to solve problems that help people more than businesses. As FAKEGRIMLOCK says: "FIND CONTENT USERS WANT TO PAY FOR. ADS JUST WAY TO GO BANKRUPT SLOWER." https://twitter.com/#!/FAKEGRIMLOCK/status/189522728452231170 https://twitter.com/#!/FAKEGRIMLOCK/status/18952272845223117...
- look_lookatme 15y agoExisting advertising solutions are, but it's a business that most good developers/designers/product people don't want to touch, so it continues to be shitty. I've been following Adzerk for a little while and wish my workplace could try them out, but I don't get to make those decisions. Still, I've long thought writing a non-shitty ad server is sort-of noble and interesting, so I'm hoping they continue to be successful. Advertising is a mess and most of it is terrible and the problematic mindsets that have made it that way are pervasive... but what I see there is a ton of hard problems and it will be smart, entrepreneurial people that attack those problems. Also: money
- mindcrime 15y agoAdvertising is only one or two steps above TPS middleware. What's your problem with middleware? Building middleware gets you closer to doing systems level programming that a lot of things.. you get to deal with challenging problems in data storage and retrieval, concurrency, networking, filesystems, etc. when you're building infrastructure code. And middleware is used to build solutions to massively complex and challenging business problems that have a real impact on how people do their jobs and how companies run. Personally, I'd rate working on a cool middleware platform (preferably something Open Source) as one of the best gigs you could have as a developer. (Disclaimer: I'm the founder of a startup that builds Open Source software that would probably be lumped into the "middleware" category.)
- ionforce 15y agoAnyone of you identify in the former group, at a corporate job and loving it?
- waqf 15y agoWhen I read "Jonathan [has] a fiancé", I have to ask myself whether: 1. Jonathan is gay, or 2. the author can't spell.
- fierarul 15y agoThe gist of these kind of articles is that you have a choice! A job is just another kind of mutually agreed relationship and you have the power to change its parameters or end it. But I guess some kind of Stockholm syndrome starts developing and some people need to be reminded that. Not only that, but their skill is in high demand so the is little to no risk in switching -- something that also needs to be said out loud. It's basically a form of self-help which isn't bad but should be labeled as such. The assumption that only large consumer-facing products are worth working on is wrong. There is a whole world out there you don't know about and it doesn't run software on iPhones. It depends on the person, but you shouldn't need external confirmation to be proud of your work -- either you did it well or you didn't. Generally, the problem isn't the project per-se, it's just the management. A horrible boss, ie. a horrible person will wreck your day regardless of what are you working on. If you are hired to write internal reporting software, don't be surprised you will work on internal reporting software. Make the most of it! Software is depressing because that's the best you can do sometimes. There is this type of corporate developer that's just at the edge towards a good developer but he just believes he's the greatest. He'll always be unhappy because the Man just won't let him try the latest fad and if he only would be allowed he would make such great software. But what does he do? Crappy software! A certain degree of modesty is required in software because not everybody before you was an idiot, and if you had free reign you would make an even crappier solution with the latest fad and all. But essentially, the kind of people feeling bad are just unmotivated because the job is not a good fit. That's it! As the RSA video said, they need more autonomy or a "higher" purpose or just want to get better at something else (mastery). But sometimes what's missing is a degree of realism.
- ChristianMarks 15y agoSpring is in the air--it's resignation time. The abysmal enslavement of family life never appealed to me. For that reason I never got married and never had kids. (I have a cat though.) Worked for a decade supporting other people's research--tremendous error. A new non-technical VP was hired (he is an ABD in math, I have a Ph.D. in math--a source of tension between us). A year ago the non-technical VP hired a smug, platitudinous non-technical director, whom he installed over two directors. I was one of them. Since directors could not report to directors, our titles and job descriptions were downgraded. I abruptly resigned. During the exit interview, the head of HR wanted to know why I was leaving. I reminded her that she was cc'd on the restructuring memo, which stated that my title had changed from director to Zweiter Beauftragter für Administrative Fragen, that the position no longer reflected my education, interests and ability and that I had been immobilized under an incontinent rhinoceros. I jumped to what I thought was a research position...but I won't describe the often mutually undermining responsibilities the position actually entails. It's still superior to the Bolshevist ITIL-addled regime I left, though the article inspires aspiration to something greater...
- j_baker 15y agoI later asked him directly, “…but do you love your job?” He paused, looked down to his drink, and replied, “I love my team, but I fing hate my job.” There's one thing that I heard pg say one time that's always stuck with me: people make the difference. Good people can make a boring project fun. Bad people can make a fun project hell. It sounds to me like the person quoted likes his team, but it doesn't sound like they're meeting this definition of "good".
- Znash 15y agoI think that this is true no matter what field you are in. Income is important and it is very hard to change course in life when you have a family and other financial obligations but it is worth it. A happy person makes a much better partner then someone who is frustrated and depressed.
- Produce 15y agoI've taken this sentiment to heart over the last couple of years and went from hating my profession and seriously considering finding a new one to rekindling that passion. The key was getting a position where I can help make critical decisions and have a real say in what happens. At jobs where the decision making process was deferred to people who were either out of touch with reality or thought that their voice should be louder than the other team members' the feeling was soul draining. I think that there is a sweet spot in already established, small to mid-size businesses looking to step their game up. They have the resources to Do It Right, the patience to carry out the process and the wisdom to trust what your experience and knowledge tells them.
- skrebbel 15y agoWhat's it with HN blog posts and dividing the world in: 1. BigCo. 2000+ employees, mandatory suit and tie, great income, soul-crushing work. 2. Startup. 14 employees, sneakers, Macs and fancy goatees, work 16 hours with fellow brogrammers, life is amazing and awesome. Really guys, the world isn't this simple! It's a very nice way for the recent Graham converts to beat their chests, but there's a lot of cool stuff to be done between working at Accenture and working at Quora.
- tytung 15y agoThat's why I want to make a great, revolutionary hardware.
- advice2012 15y agoAs for quitting- never quit unless you must. And don't sabotage yourself to get yourself fired. You suck less than you think you do, and if you work hard enough, you will hopefully find something somewhere to transition to. I worked in golden handcuffs, unable to leave because of the good pay, benefits. I felt I was getting less marketable by staying there, and that I couldn't work somewhere else. Friends told me about other opportunities and I ignored them because I had no motivation- I was miserable with the job, the politics, everything. Luckily, an old co-worker provided me with a great opportunity. For others I knew who were even more able than I was, it also took spending a lot of time polishing his image and interview skills. You used to be able to just get jobs because of your resume. But these days, an interview can be like a black belt test. You have to show skills as if you were applying for an enrty level position, mid level, senior and executive all at once. Once I broke those handcuffs, I knew I was better off. It is scary, but it is worth it. I still don't know if I'm doing what I should be doing, but it has got to be better than hating every day at work. And when you accept the offer at another company, treat the first company with respect, but tell them honestly what you think in a way that you'd be proud if your assessment of them went public.