Risk (how likely are you to succeed at this career) vs Reward (salary seems very important to you, job enjoyment is always important since it will motivate you to succeed and push yourself)
Salary should be fairly easy to research, although at least in CS pay is going to vary dramatically depending on where you live (be sure to adjust salary for cost of living!), and how advanced you are in the field. I’d assume that’s also true of accounting, but CS is the field I know and can speak to from experience.
Job enjoyment and probability of success should be fairly easy to get a feel for by just spending a few days at each activity.
I’d personally weigh enjoyment as the most important factor, simply because I’ve found that a happy job makes me motivated, and motivation makes me do better work, which leads to promotions, which leads to more pay. If you have a strong ability to do uninteresting tasks, then salary would probably become more important.
One last factor is cost of living based on profession: Computer science tends to let you get away with jeans and a t-shirt, there isn’t really any need to display wealth. Working at a hedge fund, you might be expected to drive a nice car and wear fancy clothes if you want to succeed, which can reduce your salary. This is especially important if you’re prone to such behavior already—working in accounting might very well encourage you to tie up a lot of your style in status symbols instead of charity (I would doubt this is the case for you, based on what you wrote, but I like to make my advice general :))
Job enjoyment and probability of success should be fairly easy to get a feel for by just spending a few days at each activity.
Trying something is much better than just thinking or talking about it, but unfortunately, spending a few days doing it also brings some biases.
For example many IT jobs are essentially this: “get data from database column X and display them on web page in input field Y”. When you do it for the first time, it is interesting, you learn something, you think about how you would improve the process. When you do it for the 100th time, it becomes kind of boring, and your first year at the job is not over yet. When you do it 10 years in a row, you realize you have wasted your life.
There is also a difference between designing an algorithm and writing a new elegant code—what you do when you are a new person in a new project --, and adding a new functionality or fixing a bug in a huge undocumented spaghetti code written a few years ago by a person no longer working for the company—the longer you stay in the company, the more of this kind of work you get, unless you move to a management position.
I’d personally weigh enjoyment as the most important factor, simply because I’ve found that a happy job makes me motivated, and motivation makes me do better work, which leads to promotions, which leads to more pay.
I agree that work enjoyment is more important that the salary (assuming the salary is enough to survive decently), but unfortunately the working conditions change, while the salary often stays the same—be careful not to trade too much salary for a good first impression.
The chance of promotion depends not only on your work, but also on size and structure of the company. In a very small company, there can simply be no position to be promoted to. In a medium size company, the positions above you can consist of only management work, not programming—if you enjoy programming, but don’t enjoy management, you probably don’t want this kind of promotion. On the other hand, when you are part of a larger team, your individual contribution can dissolve in the work of others; and if someone else brings the whole project to ruin, whatever good work you did becomes just a part of a failed project. Your good work is not automatically visible; to be promoted, your social skills are no less important than your technical skills.
So I agree about importance of job enjoyment, but I doubt how much it can be estimated by spending a few days doing it.
It’s worth noting that, at least in programming, experience in one job can generally be used to request (and receive) a higher salary at your next job. Even if the current position doesn’t offer promotions, you can still move up by moving out.
When you do it 10 years in a row, you realize you have wasted your life.
This is why I like programming. If I do something more than a few times, I write a program that then does it for me. I’ve had jobs where I was a “Full Time Employee” that worked 10-20 hours/week because I’d automated most of the job away. I mostly just provided on-site training and support for the code I’d written. I eventually moved on because sitting in a cube playing NetHack was boring, even if it was a living :)
experience in one job can generally be used to request (and receive) a higher salary at your next job. Even if the current position doesn’t offer promotions, you can still move up by moving out.
Just don’t do it too often, or the employers may notice the pattern and start asking about it at job interviews.
This sounds like a different side of the planet. (checks user details) Yes, it is. :D
Here the cultural preference is one employment for life for average jobs, and for IT jobs I would guess 5 or 10 years per job. (For more adventurous people, there is an opportunity to do 3-12 months contracts for foreign companies, but this includes either a lot of travelling or living abroad. This is mostly done as a sole proprietorship, which means that if you happen to screw up something, say goodbye to your property. I have considered that too, but unfortunately I hate travelling.)
In fact, I’m not naturally inclined to care much about money. But I know money would (1) allow me to do good through charitable giving and (2) allow me to help my (hypothetical) kids pay for college—something my dad did for me and which I’m extremely grateful for.
Risk (how likely are you to succeed at this career) vs Reward (salary seems very important to you, job enjoyment is always important since it will motivate you to succeed and push yourself)
Salary should be fairly easy to research, although at least in CS pay is going to vary dramatically depending on where you live (be sure to adjust salary for cost of living!), and how advanced you are in the field. I’d assume that’s also true of accounting, but CS is the field I know and can speak to from experience.
Job enjoyment and probability of success should be fairly easy to get a feel for by just spending a few days at each activity.
I’d personally weigh enjoyment as the most important factor, simply because I’ve found that a happy job makes me motivated, and motivation makes me do better work, which leads to promotions, which leads to more pay. If you have a strong ability to do uninteresting tasks, then salary would probably become more important.
One last factor is cost of living based on profession: Computer science tends to let you get away with jeans and a t-shirt, there isn’t really any need to display wealth. Working at a hedge fund, you might be expected to drive a nice car and wear fancy clothes if you want to succeed, which can reduce your salary. This is especially important if you’re prone to such behavior already—working in accounting might very well encourage you to tie up a lot of your style in status symbols instead of charity (I would doubt this is the case for you, based on what you wrote, but I like to make my advice general :))
Trying something is much better than just thinking or talking about it, but unfortunately, spending a few days doing it also brings some biases.
For example many IT jobs are essentially this: “get data from database column X and display them on web page in input field Y”. When you do it for the first time, it is interesting, you learn something, you think about how you would improve the process. When you do it for the 100th time, it becomes kind of boring, and your first year at the job is not over yet. When you do it 10 years in a row, you realize you have wasted your life.
There is also a difference between designing an algorithm and writing a new elegant code—what you do when you are a new person in a new project --, and adding a new functionality or fixing a bug in a huge undocumented spaghetti code written a few years ago by a person no longer working for the company—the longer you stay in the company, the more of this kind of work you get, unless you move to a management position.
I agree that work enjoyment is more important that the salary (assuming the salary is enough to survive decently), but unfortunately the working conditions change, while the salary often stays the same—be careful not to trade too much salary for a good first impression.
The chance of promotion depends not only on your work, but also on size and structure of the company. In a very small company, there can simply be no position to be promoted to. In a medium size company, the positions above you can consist of only management work, not programming—if you enjoy programming, but don’t enjoy management, you probably don’t want this kind of promotion. On the other hand, when you are part of a larger team, your individual contribution can dissolve in the work of others; and if someone else brings the whole project to ruin, whatever good work you did becomes just a part of a failed project. Your good work is not automatically visible; to be promoted, your social skills are no less important than your technical skills.
So I agree about importance of job enjoyment, but I doubt how much it can be estimated by spending a few days doing it.
It’s worth noting that, at least in programming, experience in one job can generally be used to request (and receive) a higher salary at your next job. Even if the current position doesn’t offer promotions, you can still move up by moving out.
This is why I like programming. If I do something more than a few times, I write a program that then does it for me. I’ve had jobs where I was a “Full Time Employee” that worked 10-20 hours/week because I’d automated most of the job away. I mostly just provided on-site training and support for the code I’d written. I eventually moved on because sitting in a cube playing NetHack was boring, even if it was a living :)
Just don’t do it too often, or the employers may notice the pattern and start asking about it at job interviews.
You raise a valid point. However, programming contracts are often 3-12 months. It’s not really exceptional behavior to a lot of employers :)
This sounds like a different side of the planet. (checks user details) Yes, it is. :D
Here the cultural preference is one employment for life for average jobs, and for IT jobs I would guess 5 or 10 years per job. (For more adventurous people, there is an opportunity to do 3-12 months contracts for foreign companies, but this includes either a lot of travelling or living abroad. This is mostly done as a sole proprietorship, which means that if you happen to screw up something, say goodbye to your property. I have considered that too, but unfortunately I hate travelling.)
Your points about enjoyment are very good ones. After all, we know that job satisfaction is more important than money for happiness (as long as you’re above the poverty line.)
In fact, I’m not naturally inclined to care much about money. But I know money would (1) allow me to do good through charitable giving and (2) allow me to help my (hypothetical) kids pay for college—something my dad did for me and which I’m extremely grateful for.