Maybe I've just grown cynical. But your employer doesn't care about you or what you do. All he cares about is how much money he can make with your energy. Know what hard work gets you? A pat on the back and more hard work.
Gone are the days where you could build a career based on mutual respect and trust. Nowadays it's just a list of previous employments. Nobody cares how good you are or what problems you can solve. All they care about is overqualified warm bodies. Hire skilled developers and throw them on meaningless tasks controlled by business politics. At least this seems to be the general experience among my peers.
If you want to be successful, become a good politician. It's the only thing that will make your life better. Anything else is just a lie designed to squeeze more value out of you.
> Maybe I've just grown cynical. But your employer doesn't care about you or what you do.
Hard work will get you places. But nobody said anything about hard work for your employer. You have to work hard, but you have to work hard on your personal goals.
If that means climbing the ranks at an organisation. Do that. Climb them as hard as you can. Identify what gets them climbed. Do that above all else.
If that means starting a business. Launch a side project. Or two. Or twenty. Or even fifty. However many it takes until you have enough of a side-income to drop your job and live off of yourself.
If that means starting a VC-backed business. Well, work hard on knowing what ticks the checkboxes for VCs. Work hard on meeting a lot of VCs. Work hard on whatever it takes to get VCs to dump money into your idea.
The world is literally your oyster.
We live in a world where who you know is more important than what you do. You can have the shittiest product on the market. If you know the right people, you can push everyone else into bankruptcy.
Hard work doesn't get you anywhere. Being able to sell things does. And when you sell yourself instead of your work, you may as well start calling yourself a politician.
I care about our team and their wellbeing more than I do profit - although the two can go hand in hand if you reinvest in your people.
We send folks to conferences, as they learn and network, which is good for them and us. We generally give annual raises around the 15% mark. Above all we don't allow or accept the master-slave relationship anywhere in the company, and we're careful not to hire people who we feel will want to dominate other people.
I'm sure, in fact I know, many employers are assholes who treat their team like slaves - but it's not a universal law.
I'm supposed to be happy if I get 5% or really happy when I get 8% after extraordinary accomplishments. And if you performed extraordinary this year, that same level of performance doesn't get you 5% next year.
If someone is working their socks off, then we're not shy rewarding it.
In terms of sustainability - if we hire a fresh grad at £24k, by year four they're on 45 or so, assuming all is well. Most we pay anyone currently is about 60k, which is a very respectable income in a small city 100 miles from London.
Essentially, as long as someone produces more and more value for the business, we reward them more and more.
It also helps to have a decent war-chest, as this gives you confidence to pay people properly, knowing you've a year or more of salaries in the bank.
Europe. This kind of thinking probably originated in the USA. But all the tech CEOs I met so far idolize Silicon Valley. It was only a matter of time until they adopted the american way of thinking.
> I care about our team and their wellbeing more than I do profit - although the two can go hand in hand if you reinvest in your people.
Are you hiring?
British capitalism tends to be based far more on mutual respect, trust, and benefit.
We don't work with US clients any more.
Anyone who's remotely familiar with the British East India Company should consider this the best joke they've ever heard.
> All they care about is overqualified warm bodies
Seems conflicting, no?
Thought experiment: You meet two software developers who each have 10 years experience of C++. One has a CompSci degree. Does that in any way help you decide which is the better developer?
No, but it has time and again proven that it tells you which is the better engineer. Not necessarily having a CompSci degree, but someone who's made it to senior year or even postgrad is, in my limited experience, an infinitely better engineer than someone who dropped out in freshman year or never attempted.
No, CompSci will not teach you how to code. But it sure does a hell of a lot in teaching you how to design systems and engineer solutions. Of course you also need experience on top of that, but it helps a lot.
Like, things that are completely obvious to somebody with a CompSci degree, might be wholly out of the range of somebody who is self-taught.
But as always, the question is: Is that something you need? Everyone can build you a CRUD app for sharing cat pics. Even a 15 year old high school student who codes on the side can do that. But who are you gonna call when your CRUD app needs to handle a million cat photos a day? Yup, someone with a CompSci degree.
source: being both that 15 year old high school kid and a CompSci person.
No. I'd call the person who's done something similar before regardless of their qualifications. Experience is far more valuable. That's the point I was making - two people with 10 years experience are at the the same level regardless of their respective qualifications, because they'll both have seen the problems and pitfalls firsthand (at least, you'd hope so).
Possibly the CompSci graduate will have dealt with them better the first few times they encountered problems (which is why a degree can be useful), but after that it's down to the relative merits of the individual and how interested they are.
All other things equal (which they rarely are), I'd value 10 years dev experience + 4 years undergrad over 10 years dev experience + ?.
I try to work harder than average. If you don't, you get a lazy reputation, may not get a good reference, and might be one of the first to go in a round of lay-offs. However, I make sure I'm never the hardest worker. Some of the hardest working people I know are poor and too often taken for granted. I've never seen the hardest working person in a company get a fair deal. So, it's a balancing act, trying to work hard but not too hard.
For example, I could regret I didn't leave my previous employer earlier because they just didn't pay me more money eventhough my skills and impact had gone way up since starting there. But not leaving that job taught me my own value.
And knowing my value has now materialized in the form of lots of appreciation shown by later employers as well as better money and more challenging jobs. In the previous job it did suck to realize I won't be rewarded for my hard work but, in comparison to what followed, that suckage was a bargain price and I'd never waste my time regretting it.
Made me waste 5 years of my productive life, to leave me in debt that made me waste 4 years working just to pay that debt, this year will be my first real year working to actually earn money.
I'm hard pressed to say I actually regret it because I've gotten myself to a very comfortable point in life with plenty of options and I've met a bunch of great people along the way. I really only dislike my ERP choice because I've become an expert in technologies that aren't easily leveraged outside of the enterprise space and my interest there is waning.
Mistake #2 - using my authority to hire several friends from school who hadn't previously held responsible full-time positions.
Mistake #3 - trusting them to manage themselves.
My friends were all smart but none of them really cared about the business or each other. They just preferred getting paid to not getting paid and slowly left after the novelty wore off. One of them even wrote a draft of a crappy novel when we thought he was coding, which we found when cleaning out his desk.
We've all since moved on. Some of them are now quite successful. But I was burned pretty badly by that experience and am no longer friends with any of them.
I went to the university mostly to please my parents and to reassure them. I think that was my biggest mistake and I never really learned anything there.
My second regret: quitting. I'm getting bored very easily.
I'm thinking about 2 projects I started with friends where I left the ship eventually because I felt less motivated than them. Now they are both making tons of money and expansing there companies (while I'm still trying to figure out what to do with my life).
I also started a lot of projects which I will probably never release, but that's a pretty common thing.
The last one: working for someone else.
Studying led me on the logical path of getting a job. I first said to myself that it will be temporary and I listened to people who were telling me that I had to have a little experience before launching my own thing (and my advice is: don't listen to their bullshits and do what the fuck you really want to do). The truth is that when you get a job it consumes you and you can forget what your dreams are pretty quickly.
The counterbalancing point of this last regret is that I met extraordinary people while I was an employee, who are still very good friends nowadays. Actually the guy with whom I'm trying to build a startup right now is a former coworker of mine ;)
Now I'm freelancing with friends, making good money, flexible hours, feeling much better already! Finally paying off the debts I made during the startup time. Also working at a real company can be quite nice!
Startups are like cults, you only realise what it was after you left. Got myself dragged into this sick mindset of overworking. And as it turned out, we've been working 90% of the time for nothing! Not exaggerating here. Hope it will pay out at least, but not sure about that even... I had better worked half as much time as a freelancer and just bought the shares for money.
Fresh fathers and mothers out there, beware! Startups have to be really family friendly, then it could work. Considering we've only been doing 10% valuable work that eventually contributed to a good product, I believe it's possible to work, say, half as much, have a good work life balance and still get a better product shipped in the end.
 With "non-technical" I mean economics people, the "We have a super great idea and are looking for somebody to just do the little boring work of just executing it" bunch. I enjoyed working with non-technical people in general very much, but I've had bad experience with business people, those that only care about money, not about the product or employees.
I'm moderately well paid, I have a plan to save money + quit, I moved to a new country and now have a lovely girlfriend, so I'm still in a happy situation - but I wish I could have had these things and pursued my career a little better.
I learned a lot from the experience, but there was a point at which I should have called it quits. Then again, I guess I learned that as well.
I don't regret having done it, and I accept the time lost as a necessary price, but looking back I think I could have saved myself a lot of time by calling it quits a year sooner.
If you're in a major you don't like and can't switch, drop out. University is largely a scam that exists to impoverish students and adjuncts for the benefit of a bloated administration.
Junior college, however, is an amazing thing and I encourage it for anyone.
Yeah, from what I've read, a lot of state schools are much less of a bargain than they appear because they simply don't care if you can really graduate in 4 years. The private school I went to would move heaven and earth to make this possible, deal with unexpected overflows in majors (you could pick any and change to any as you wished), etc., which is one of the things you pay the big bucks for.
I have something akin: gross parental betrayal I didn't cotton onto soon enough, resulting in my fruitlessly mostly wasting a decade trying to get the necessary undergraduate science degree, which includes useful recommendations for graduate school, i.e. lower tier schools aren't good for this, for the career I'd prepared for starting in 1st grade. Programming and system administration were just things I was good at, but I didn't truly dedicate myself to programming until all that drama was over, with a huge opportunity cost. Never tried to learn a lot of more pure CS when that would have been a possibility, then again I started seriously studying software engineering in high school.
Also thinking I had plenty of time to work things out; turns out I have a genetic disability that permanently took me out of the work force in my early-mid '40s (picking a date is hard because it started when I was 37 and I turned 41 when the dot-com crash made finding employment very hard).
I.e. make the most of the here and now without foreclosing on the future (as I've seen others now regret).
It wasn't. It took me an entire extra year just to get one class I needed to graduate (mind you they have plenty of money for a fancy gym and new buildings, but not for professors to teach classes). I only got out when I was 25 and a sad, bitter, angry shell of a person.
There's a happy ending, though. I left San Luis Obispo, started going to night classes at Ohlone College in the bay and later Santa Monica College, and finally built up enough of a skill set to work in ad operations, then support, then support engineering. I had thought I was too stupid to do anything, but I did well in my classes after Poly and professionally.
Since then I've tried to adopt a motto to enact change before life has the opportunity to do it for me. You are never secure, so don't pretend you are. I thought I was in a decent position in SM when I left for Ireland on a working holiday (it had always been a dream of mine to live abroad). I was terrified to leave a good job for a country with a crappy economy. Lo and behold my whole department was shut down a month after I left, and after a bit of networking in Ireland I ended up with a position better than I had at home. How long this will last I don't know, but I know that it won't be forever (nothing is) and I am always looking out for what's next, and trying to improve my skills (lately I've been in to brewing automation and getting better with Arduino).
That was long-winded, but I guess I also felt like I should point out the positive learning that came from it.
I still should have dropped out, though.
 - https://news.ycombinator.com/item?id=9061451
 - https://news.ycombinator.com/item?id=9061437
Life is all about finding your own way, and enjoying the experience.
A few things that spring to mind:
a) badly paid compared to the value produced (still better paid than teachers)
b) ageism in the industry
c) the developer ego's (in general) for some reason are over the top, making it impossible for people to have normal discussing about various topics (you can see it here in HN) almost as bad as discussing politics
d) the next best biggest greatest thing being discovered every 2 months by 20 year olds that just discovered something from the 70's and you still have to pretend to be enthusiastic about it for networking/job interviews
e) sexism in the industry
f) in general, a sense of immaturity both on the development/architectural side, but also on a personal level in most places/conferences
g) networking has more to do with success than actual skills, at least in business school you learn that from the get go
Maybe I'm just getting old and want to scream at kids to get off my lawn.
The worst of it all, I'm 32 (been working professionally since I was 16, and programming as a hobby since 11). I'm not supposed to be an old timer complaining about 'kids these days' but sure feels like it!
I'm actually working with a very nice team which until today at least, haven't exhibited any of the signs above, but all the other 14 years have been in situations like that.
One of the biggest eye openers I had as a developer and how I was being 'exploited' was when doing work for a consulting firm, the ceo of the company asked me to pick a open source app, change the logo and a few other things (2 days work), and the next day he presented the app as one of his 'business solutions' to some big shots (talking airports and big media companies) and was able with that to sell around 1.2 million euros in consulting services by demoing the open-source app and claiming a lot of the credit for that app. This is something as a developer I still cringe and would probably feel like I would need a bleach bath to clean myself but seems to be day-to-day from people that have MBA's or business/finance education.
I escaped a year ago and am so much happier now.
I don't want to resent my unborn kids because they make starting a business impossible/more difficult.
I just never had the motivation to do something besides the 9-to-5 job before I got pregnant and I do sometimes regret that, but it's just the way it had to be for me. Working on your own business takes its toll on your social life so who knows, you might not have met your partner because of it... :)
Anyway, don't think too much about regrets, now is the best time to start your business! It will be hard to find time once you have children, but I don't resent my child for leaving me less time to work. You'll just have to be patient and accept that you can't work at the same pace as before. Find ways to work smarter, so you can get more done in less time.