Ask HN: I'm 23, and I dislike my job as a software engineer
However, despite learning from being in a team of developers, the work here is frankly uninspiring. We work on Java EE for the web with JSF, and most of my day-to-day work simply involves mere bug fixing in the existing system. I don't see any good projects that will help me learn good tech and good coding practices.
The only reason that I feel like sticking to this job is the money. I come from India, where people in the IT profession are hired for peanuts. So the money that Japan gives me seems relatively very good, even if it is nothing compared to what the US provides for software engineers. I have contemplated a lot of times about pursuing an MS - just like my fellow Indians do - as a gateway to US and the jobs in the US.
But more often than not, I realize that maybe almost all software jobs tend to be mundane in the end. Am I wrong?
I know that in the future, I would to stick around in the tech industry, but not as a developer, but as someone who is more involved in the wholesome outlook of the product - like a product manager, perhaps.
What should I do? Am I being too pessimistic? Is it okay to feel this way? After all, it's just been a year since I started working.
49 comments
[ 4.9 ms ] story [ 103 ms ] threadAnother alternative would be to switch to being smartphone developper, eventually to an independent smartphone developper, where you'll be able to find more interesting and technically-challenging projects.
Translation: "Passionately" - we will underpay you "Fast paced" - 7 days a week "Change the world" - we won't ipo but sell out to a company for a few hundred million which you won't see a dime of.
GL!
(Source: too much time interviewing in silicon valley)
There's a reason people have called college "the best years of your life". They really are; everything goes straight down the toilet after that.
Ftfy
There's pretty much no way I'd ever work for a startup. Too much risk and little up-front reward.
Also, work and learn at home. That's your time and you can learn and do whatever you want.
Keep in mind that there is no job where everything is perfect, so collect all negative things you have at the current position and try to change them. If that's not working then leave :)
What managers love is the example and real POC. So if you think that something is wrong or old, create a POC, make a demo. That way you can get some time and resources to do something new and interesting. Don't think someone will give you such project just like that :)
To add to what you say, I also believe that while we easily start hating our jobs most of the times, we often fail to realize we were never excelling at them.
When I come to realize that I am currently not enjoying my current role, I think of only two possibilities. I either put in my time and efforts to make myself better at what I am doing or simply do something better that would make me enjoy my job.
P.S. grass is always greener on the other side.
Your saying at the end of the comment described everything.
Also we have to log hours meticulously (down to 15mins). Even after a year that is a pain in the ass and actively makes me dislike my job.
I think you're starting to think like them.
I've been out of work ever since and love it.
I have a space alien.
God says... disfigurements polyphony's theologian's limpest ounce players saboteur's Bushnell's weakling's we'll patriarchies regenerates figurine's navigation's sequencer briefness Cerf's marchionesses Ashkhabad's fix creationism's establishing elicited countersank lumberman's infantry homerooms puritan stooge's transsexuals monsieur foresight's
How would you like to be on a failed project at Google. Miserable.
One thing to consider is the particular context. I've seen software shops where there's a great deal of creativity and fun, so it's possible that the problem is that the bank's core business isn't software it's money. Sure, all businesses are out to make money but what they value beyond that is radically different between industries and even between companies in the same industry.
I bet the people at your bank who get the most respect dress very well, concerning themselves with finance. You might find an environment that's better or a role that's better. Or both.
Hell, you have time to make a bunch of mistakes, too.
I had many jobs on my 10-year long career. I disliked all of them. I settled into a job that doesn't make me work that much, so I can just do other stuff and be less sad.
Is there something that DOES excite you? Management? Databases? Switching Stack (lamp for ms, or .NET for full stack, cloud stuff?)
I would think if you've been doing it for 10 years, you probably can start shifting around and picking up new things and make a pseudo career change
I worked as an architect, which I didn't like too much, esp. the low pay. even if I was highly successful, been on national TV and press, exhibitions, ... Then I got into more technical jobs, like surveying, civil engineering, stage design, movies and also a lot more SW jobs. They were much more interesting and I got paid double.
Then I settled as SW developer in a big internet company, which was nice for a few years, but then I took a big risc with a B2B SW project which failed. Then I worked in knowledge engineering and mechanical engineering (support Formula 1 teams with their engine testing, I was basically a virtual Formula 1 "test driver"), which was nice I guess.
But in the end getting back from mixed engineering jobs to sole SW engineering made most fun. Now I'm writing compilers.
For the Formula 1 e.g. I wrote a C++ cross-compiler for an unknown platform, for which we only guessed what it was in reality (it was a blackbox with custom PCI boards), but it was successful and eventually helped this team win a couple of championships. (the unknown platform was 10x faster than the others). But technically it was as simple as stripping g++ from all virtual RTTI calls and IO.
Writing my own compilers and now also improving the libraries and VM's around makes a lot of fun, and has a lot of impact. E.g. planning a JIT. It's not as dangerous and has not a high budget as high speed controllers for high speed cars, with 10-20 PC's and a lot of custom real-time HW involved. (For which I also planned a JIT for a Visual Basic like real-time scripting language, but would have never been allowed to actually do it). But you are much more independent, have much less stress and much higher pay. SW engineer is the top job. Esp. in the USA.
Look, you're the equivilent of a fry cook. You want a good job, be a chef. How do you get to be a chef, you ask? You stick around, and get on burger duty, and eventually, someone has you cook a steak.
The point is: you're super new to this. Eventually, you will have enough experience that you can CHOOSE your jobs. Sure, 99% of the programming jobs may be boring tedium, but if you are good, you'll be able to choose the 1% that aren't.
But when you're starting out you just have to be a sponge and keep an open mind. Either find a niche or be great at everything, but dont just get by, because that's how the 99% does it.
Source: 17 years in SW - I'm an enterprise architect.
First, is to see the value in every job along the way. I started out as a hardware engineer, but had this nagging voice telling me I wasn't in the right job. It took a while to realize that my heart was in software. At first I felt like I had wasted career time as a hardware engineer, but then I realized I was much better at certain software problems because of my hardware background than others. If I take inventory of all of my jobs, even from high school, I realize that I have skills to this day that can be traced back to them. Even the ones I absolutely hated.
Second, while finding your niche is important, also find the right boss. Bosses have almost as much to do with liking your job than the work itself. I actually think it is harder to find a boss worth working for than finding work I want to do.
Bigger companies will always be less flexible, and especially banks love rules. The bigger the company, the more process (aka. bullshit) can get in the way.
For example, Microsoft is now swell, really. I mean, do you think it was really that difficult for them to improve Winphone ASAP? Of course not. But it took them so many years, they failed Windows Mobile, bought Nokia, destroyed Nokia, stopped releasing updates to older phones, and now they're dumping Lumia. After all these years, they still don't have a solid user-friendly OS. I know, people always complain about the lack of apps, but I believe Winphone has a bigger problem: it is not designed with the users' happiness in mind. Microsoft is too big that transforming ideas into products is so slow due to all the bureaucracy.
This is not the case with startups. They mostly use scripting languages with fast development time such as ruby. While ruby fits well for prototyping purposes of startups, banks and huge companies use enterprise solutions like Java, which has slower dev time, but instead comes with many rules. It's "business best practice".
I'd say what you are going through is pretty similar to a lot of software engineers. It also contributes to why a lot of engineers end up starting companies.
In fact, I LOVE Sofware Engineering. I realized that when I left my previous job to get back to school. Every time I had some free time I was programming on personnal projects.
No, you're not wrong. Almost all jobs of any kind are mundane. You can either accept this and deal with it like most people or work to find a job that isn't mundane to you.
Work is not about you. It's bigger than you. It's a way to get society's needs met.
Your job is to find your dream, define it and balance both work and your goals. Understand that you'll work for someone but it's only temporary until you get your dream going.
Do this or you'll be changing jobs and careers without much fulfillment. It's only going to be a drag.
If you're lucky you'll fall into a job with an inspiring leader. Where his/her dream will be comes yours but don't count on that.
There's the sentiment that says, "Do what you love, and you'll never work another day in your life."
The question is, "What do I love?" What I think it really means is "Define your current job in a way that fills your needs and you'll never work another day in your life."
Good luck, finding your needs.
Luckily for me the IT crash of 2001 happened and I was out of a job. After a while I did data entry and automated that ... which I enjoyed.
It turned out that it was Java EE I hated (and the horrible codebase we used). Since then I switched to Python and it reminded me that programming can be fun.
Sure, there are a lot of web apps that aren't the most exciting, but I'm always moving forward and learning new things. Try some other languages and see if you like them - when I started with Python, I learned by building a simple breakout game with pygame.
In every job it helps to find an element you can enjoy ... for me I am never touching J2EE again, it was just so horrible.
Also - you NEED to work in teams with other people, hopefully there will be someone smart in the team you can get to mentor you + there will be good code you can learn from.
S
School is one of the most addictive drugs you can take. Dedicated learning is completely different from on-job training (which mostly doesn't exist) and experience through work.
The pace of job-learning is significantly slower, additionally the things you learn are not what you were hoping to. This means that it will be harder to identify what you gained. Be sure to update your resume monthly until you get better at recognizing these things.
As 'Hellwd' said, you will greatly benefit from learning how to grow on your own time. It will also give you the opportunity to choose your own career path instead of taking whatever path closest fits your company.
Remember : If you plan to return to school within the next 5 years, then there is little risk in what you do for the next few years. Now is a good time to experiment on your employment needs.
I know several people who have left the industry, happily, for jobs that keep them outside.
There are cool jobs, they are just harder to get, and its difficult to appreciate the forest through the trees. Every job has crap parts.
At that rate, you know how long a $40,000 student loan was going to pay off? I needed to do additional work to catch up. Basically, I designed and developed Auto-Collision software, from adding new things to mostly fixing up old bugs & errors, etc. Severely underpaid. I loved the job but my boss made my time there hell. He was a micromanager. He taught me a bit of logic, but really didn't do me any favors.
During my time there, after work, I'd go home and search Craigslist for people looking for web designers and managed to make some good money that way. About a year and a half later, I had already gotten deep into web design and development, which I loved. It wasn't enough to quit my day job, but it was enough to give me the confidence to start looking for other jobs in that area.
To make a longer story short, I ended up leaving, but before I left, my boss had offered me double my salary. So I would've been making $24/hr. I turned it down because with that offer.. everything came with a catch. If I made any errors or anything like that, he would've thrown it up in my face: "What am I paying you this amount for?" etc. So I couldn't deal with it and ended up settling for less. More than what I was making, but far less than the double salary. I didn't care because I managed to accumulate a lot of experience within the next 5 years.
I ended up getting 2 web design jobs at the same time (one from 8 AM to 5 PM and another from 6 PM to 2 AM) and did that for 2 years before getting laid off by the former, and now I currently work the latter. About 2 years later, I would end up making the salary he offered me, plus benefits and a ton of vacation time and the freedom to not have a "micro-manager" constantly hovering over me.
You can read more about it here: http://confessionsoftheprofessions.com/the-opportunity
Anyways, the point is: Sometimes you do have to stick it out for a time, but take it all as a learning experience until you can quit the job and get one you love. If you aren't happy doing something, than find something that makes you happy. It makes your life totally worth living.
I not only still work at my day job, but I run a freelance business, a software company, and several side projects, and although I find myself working 15+ hour days sometimes, I love it and I don't think I'd have it any other way. If you take everything you learned and you apply it, you can make an excellent living, but turn that living into something you want to be doing everyday.
Also: The more you know, the more valuable you are. If you've gone 6 months to a year and the company has grown and yet you've seen no "returns on your investment", than start looking for another job, but don't be afraid to ask them to consider "better benefits" for you or at least a raise.