No, seriously now, why did you become a software engineer? Was it the beauty of the algorithms? The intelligence of the design patterns? The happiness to see other people react to your creations? The agile manifest? The money they promised you? Was it your mom?
Haha that's exactly why I'm in software. Have EE degree as well as CS, and I was arguably much better at the EE stuff. But it was way easier to find a job in CS, and the jobs pay significantly better. So here I am.
I still get recurring nightmares about op amps though.
1) Starting with a blank screen and creating something
2) The artistic side (creative) along with the technical side (analytical) really does it for me
3) Being able to work from home and make the money I do. Talking as an employee here. Now a days an entrepreneur can make tons more from home.
I became a software engineer because I enjoyed programming as a hobby and I was good at it. That was twenty years ago. Now I'm still doing it because of the pay and not much else.
The same, but I'm still enjoing it. I'm working in day job in erlang, c, python and sometimes in what's required at the moment. Probably the most important thing is to find a job, where what you are doing is challenging.
Rather than challenging, I look for work that helps people. I don't mean necessarily charity work that feeds the homeless or something, though that obviously fits. But even if I'm just working on an Outlook plugin that helps you schedule your meetings, that's useful work for people, it hopefully reduces your hassle. That's the kind of thing I find rewarding, making your day suck slightly less.
This isn't me saying your way is wrong and my way is right, just offering a different approach to job search.
Personally, I took to heart at an early age the idea of not looking for something you love, but instead finding something you can tolerate. Work - almost by definition - "sucks" in some very subjective way, otherwise it wouldn't be called work. But at the same time, one person's pain is another's gain.
Thinking about work in terms of objective drudgery that one doesn't mind doing (or even better, that one enjoys doing) is one way to avoid the mental dichotomy of drudgery-vs-reward since then the work itself is either its own reward, or it just doesn't tip the scales negatively, philosophically speaking. In a way, it's a form of taking pleasure in small things, like feeling accomplished after cleaning the kitchen even though cleaning a kitchen is almost universally considered drudgery.
I'm very aligned with this. That's why I didn't focus too much on whether I enjoy the task, because every "job" will be drudgery after a point.
A woodworker has a new cabinet or something at the end of the day. It's a real thing that is useful in the world and even if you stopped enjoying woodworking you at least see real tangible results from your work. This is much harder to get from IT/software dev. That's why I try to focus on whether my work makes someone else's drudgery less awful. It gives me the feeling that I did a real thing that accomplished something (however small) in the world.
Funny thing, in spanish we associate "trabajar" as the modern meaning of "working", but in old times was meant as "to torment or torture with the triple-club".
This is interesting to what extent people really have principled, intentional plans leading them into this field.
My own path was convoluted as hell. I was an Army officer commanding tanks and wanted to become an ORSA and began studying Applied Math to that end. When I moved onto grad school, Computer Science ended up being easier to do because my Colonel told me about Georgia Tech beginning to offer a fully online program identical to their in-residence program. The Army will send you to school, but you owe them two days more in active duty obligation for every day they send you. If you do it remotely, no obligation. So I did it remotely.
With a background in Applied Math, I specialized in Machine Learning in grad school, and after that, initially ended up in a hedge fund doing algorithm research. Catastrophic spine injuries sent me into a period of surgeries, pain, downtime, wanting to kill myself, and all in all definitely not working. When I finally came around, my first two offers were with L3 for a pure data analysis role developing some Air Force program doing human movement pattern detection, and with Raytheon in a software engineering role working on ground processing algorithms for satellite imaging.
Well, I still couldn't drive thanks to the spine problems, and Raytheon's campus was right next to a train station, so I chose that.
So here I am, years later, a software engineer (no longer with Raytheon). I doubt this exact story is prevalent, but a bunch of people I worked with had originally been physicists and electrical engineers. We all got sucked in because software is eating the world and the roles are much more prevalent than other roles. I could have stuck with machine learning but that limits you to a tiny number of huge players that are making any meaningful headway and impact in that space. Sticking with software more generally allows you to work anywhere doing nearly anything.
I have always found computers interesting. However maths was my worst subject so decided to study something more business-y... Hated it, saw the social network and was just enthralled by the idea of being able to make something that people like and use, without anything but time and a computer (and a 10 dollar Linux vm). Switched majors and never looked back since. At the end of the workday, I sometimes want to continue cracking on a problem. Love the feeling of finding neat and simple solutions to difficult problems.
I became a software engineer because CS was the only class in school that has ever, ever genuinely interested me at a deep, fundamental curiosity level. It's definitely something about the fact that the work is about the closest you can get to getting paid to be a logician. My second favorite class in school was of course the Symbolic Logic class I took in college, which was extremely amusing to me since I was the only CS major in the class, yet by the end of it I think all the other students had a better grasp of programming than like 50% of CS majors.
(This was a philosophy credit that was completely elective - people only really had 1-2 slots for these "Elective: Any" kinds of classes since most of your electives were like "Elective: Chemistry" or something like that. So people in these kinds of classes purely self-selected. Most people just took one of the well-known blow-off classes, which honestly I don't fault them for, this wasn't an easy school).
I have been a happy electrical engineer. One day, I needed to solve a 'problem'. I learned some basic coding, solved the 'problem' with code, but the bug already bit me. My world was never the same since.
I become a software engineer because I'm lazy, like water, I flow along the easiest path in life.
That I found it "easy" was probably because I live and breathe computers, so when something was hard, it was not hard, it was just interesting.
I was always fascinated by computers, by what was behind, how stuff showed up on screen and how someone could do such magic, so I had to find out.
I became a software engineer because it was a back up plan that became THE plan.
Grew up learning BASIC on Commodore 64. Went to college right after high school studying computer science. Dropped out after 1.5 years joined the Air Force as aircraft mechanic.
After 4 years left AF, back to college but now studying aerospace engineering. 5 years later graduate and start job jumping for the next 6 years because engineering was boring to me (more of the jobs req'd an engineering degree but no real engineering involved.)
Became a firefighter-paramedic. The first few years noticed a lot of people leaving because of back injuries. Wanting to make sure if I got injured or sick I'd be able to find a job. Did remote on-line master's from DePaul. Started working part time while still full time ff/pm.
Covid hit, I had enough after 14 years and found a remote full time job. No regrets. Firefighting-paramedic is the best job in the world but a young man's game. Also a consistent sleep schedule is awesome.
I often think about where I would be had a stuck to programming from the get go. Or, while in the AF if I had studied programming more instead of drinking and trying to get laid. But, here I am, over all no regrets with my path. I like seeing the looks on people's faces when they try to wrap their heads around a person with an engineering degree that becomes a FF/PM and then a programmer. My twists and turns weren't planned and almost spur of the moment actions at the time but it worked out well.
25 comments
[ 3.8 ms ] story [ 76.5 ms ] threadI still get recurring nightmares about op amps though.
This isn't me saying your way is wrong and my way is right, just offering a different approach to job search.
Thinking about work in terms of objective drudgery that one doesn't mind doing (or even better, that one enjoys doing) is one way to avoid the mental dichotomy of drudgery-vs-reward since then the work itself is either its own reward, or it just doesn't tip the scales negatively, philosophically speaking. In a way, it's a form of taking pleasure in small things, like feeling accomplished after cleaning the kitchen even though cleaning a kitchen is almost universally considered drudgery.
A woodworker has a new cabinet or something at the end of the day. It's a real thing that is useful in the world and even if you stopped enjoying woodworking you at least see real tangible results from your work. This is much harder to get from IT/software dev. That's why I try to focus on whether my work makes someone else's drudgery less awful. It gives me the feeling that I did a real thing that accomplished something (however small) in the world.
This also happened in other romance languages.
My own path was convoluted as hell. I was an Army officer commanding tanks and wanted to become an ORSA and began studying Applied Math to that end. When I moved onto grad school, Computer Science ended up being easier to do because my Colonel told me about Georgia Tech beginning to offer a fully online program identical to their in-residence program. The Army will send you to school, but you owe them two days more in active duty obligation for every day they send you. If you do it remotely, no obligation. So I did it remotely.
With a background in Applied Math, I specialized in Machine Learning in grad school, and after that, initially ended up in a hedge fund doing algorithm research. Catastrophic spine injuries sent me into a period of surgeries, pain, downtime, wanting to kill myself, and all in all definitely not working. When I finally came around, my first two offers were with L3 for a pure data analysis role developing some Air Force program doing human movement pattern detection, and with Raytheon in a software engineering role working on ground processing algorithms for satellite imaging.
Well, I still couldn't drive thanks to the spine problems, and Raytheon's campus was right next to a train station, so I chose that.
So here I am, years later, a software engineer (no longer with Raytheon). I doubt this exact story is prevalent, but a bunch of people I worked with had originally been physicists and electrical engineers. We all got sucked in because software is eating the world and the roles are much more prevalent than other roles. I could have stuck with machine learning but that limits you to a tiny number of huge players that are making any meaningful headway and impact in that space. Sticking with software more generally allows you to work anywhere doing nearly anything.
And I knew that crawling inside the test track to unstick things sound like hard work and computers seemed to be a field with more opportunities.
(This was a philosophy credit that was completely elective - people only really had 1-2 slots for these "Elective: Any" kinds of classes since most of your electives were like "Elective: Chemistry" or something like that. So people in these kinds of classes purely self-selected. Most people just took one of the well-known blow-off classes, which honestly I don't fault them for, this wasn't an easy school).
That I found it "easy" was probably because I live and breathe computers, so when something was hard, it was not hard, it was just interesting. I was always fascinated by computers, by what was behind, how stuff showed up on screen and how someone could do such magic, so I had to find out.
Also, when it crashed or went wrong, I wasn't fazed by "X big thing may not happen now". I was already trying to figure why it did that.
And often I fixed it, ran it again and then people around would relax again as "X big thing could resume".
But man, large business sure knows how to suck the fun out of things with bureaucracy...
Grew up learning BASIC on Commodore 64. Went to college right after high school studying computer science. Dropped out after 1.5 years joined the Air Force as aircraft mechanic.
After 4 years left AF, back to college but now studying aerospace engineering. 5 years later graduate and start job jumping for the next 6 years because engineering was boring to me (more of the jobs req'd an engineering degree but no real engineering involved.)
Became a firefighter-paramedic. The first few years noticed a lot of people leaving because of back injuries. Wanting to make sure if I got injured or sick I'd be able to find a job. Did remote on-line master's from DePaul. Started working part time while still full time ff/pm.
Covid hit, I had enough after 14 years and found a remote full time job. No regrets. Firefighting-paramedic is the best job in the world but a young man's game. Also a consistent sleep schedule is awesome.
I often think about where I would be had a stuck to programming from the get go. Or, while in the AF if I had studied programming more instead of drinking and trying to get laid. But, here I am, over all no regrets with my path. I like seeing the looks on people's faces when they try to wrap their heads around a person with an engineering degree that becomes a FF/PM and then a programmer. My twists and turns weren't planned and almost spur of the moment actions at the time but it worked out well.