Everyone asks himself, where should I work? The response is different depending on your field and what you want to be in the future. But what’s discussed here, even if it’s applied to software engineering, can be said about any job out there.

If you’re in a hurry and want a quick check list, you can find one at the end of this article.


As a software engineer, you’ll have multiple fields and opportunities to choose from. This not the case for every job, so you should be thankful šŸ™‚

There are software engineers who prefer working in a bank, a web agency, a software company, etc. There is no right and wrong field. It depends on what you want and what you aspire to be in the future.

When you work in any company, you’ll be either in a cost center or a profit center. This means how the company sees you as a resource. If you’re from a profit center, this means you’re working on something that brings the company money. If you’re from a cost center, this means you cost the company money.

You’ll tell me:

“But a software engineer will always be a profit center. You know, if I’m working for a bank, for example, and I don’t deliver good software, the bank will lose eventually”

Well, you see it like that, but the bank don’t!

Basically because you’re not bringing money to the bank. We need to first know how a bank works and how it makes money. So we can understand why. The process is complicated but I’ll try to give a general overview:

A bank takes money from different people, keep it safe for them, give them the freedom to take it back whenever they want, wherever they are, and take a monthly fee (and other fees per transactions) as a reward. But, a bank can not operate and pay employees with the money it gets from these fees. So to generate more money, the bank takes customer’s money and invest it in other projects and make profit from these investments.

So to respond to the first question, a bank makes money by investing the money you give them in other projects. So you’re in a profit center, if you invest money and get a return. And this is not the case for a software engineer of course. So, a software engineer is in a cost center inside a bank.


To know in which center you belong, you usually need to ask for something. In the case of software engineers, you can ask for an extra monitor.

If you’re in a cost center, the company will see your monitor as an extra cost. It’ll think of it like: “If this employee want a monitor, others will want too, and we don’t have enough money in the budget“. They will refuse but will assure you they will include it in next year’s budget.

If you’re in a profit center, things are a little different. The company will generally ask you: “will this make you more productive?“, if your response is Yes. Then the company will think: “If this employee is more productive with an extra monitor, this means we’ll generate more profit!“. And you will probably walk with an extra monitor or get one in the next few days.


It’s crucial to know in which center you are so you can adjust your expectations correctly. If you’re in a cost center, don’t expect to get big raises or a higher salary that’s keep growing every year. If your friend is making more money elsewhere and growing fast, maybe they are in a profit center.

Cost centers aren’t bad as it may sound. They can give you other options that may be more beneficial for you. For example, people want to work for a bank so they can get a good credit to buy their house. This is the right example where a cost center is more interesting than a profit center. But other than that, it’s probably better to work in a profit center.

Know your needs and where you can get them. Then adjust your expectations accordingly. The process will look something like:

  1. Know the companies you can work for
  2. Sort them by your position in them, either cost centers or profit centers
  3. Know if a cost center can provide you something beneficial for you and your long term goal (credit, social benefits, experience in a specific domain…)
  4. If you can find a cost center in step (3), chose it and adjust your expectations (generally speaking, don’t expect a high salary, raises, v-big bonuses…). Otherwise, chose a profit center

This article is inspired by a post published on Stack Overflow Blog

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s