Discussing Team Compensation and Possible Refinements

How is this different from hiring new members? You don’t know in advance how much they’ll ask for. If they’re at the top of the rate range, they’ll eat more into the margin. If they’re towards the bottom, they’ll eat less.

Which brings me to…

How is allowing renegotiations within a certain range any wilder than hiring new members? As a matter of fact, disallowing renegotiations can only increase the number of members that leave, which in turn increases the number of newcomers.

Which only compounds the following issue you bring up:

In other words, my point is that if you allow renegotiations, you are actually reducing churn. Sure, a current member’s rate will only ever increase, where a newcomer may instead ask for a lower one than the one of the member he’s replacing. But surely a proven member is much more valuable to the company than an unknown quantity?

I mean… if somebody asks for a raise, the obvious question is “are they worth it?”. If they are, the whole discussion is moot: just pay them. If they aren’t… the answer is also pretty obvious. :slight_smile:

4 Likes

Yeap! That’s my main issues with a “one-time” suggestion…

Usually, most members, when choosing their hourly rate, consider their current living expenses. I’m pretty sure a large number of software engineers here aren’t pricing themselves in comparison to the market, but in comparison to their expenses.

We need the option to renegotiate or close-to-market minimum hourly rates.

Having the option to renegotiate, in the midst of OpenCraft and its members values, could potentially be cheaper than providing close-to-market minimum hourly rates.
The reason behind that is, members are not out here asking for renegotiation because they are comparing themselves to their peers. They are doing so, because of their living circumstances.

I agree with a lot of what you mentioned.

I don’t mind the flat structure. However, that’s a personal preference, and I understand the validity of your perspective.

I hope I can help make progress in the right direction though.

Yeah, that’s 100% accurate. To address that, I’ve been relying on Glassdoor to have a good idea regarding the possible ranges.

It’s not enough, I hope more members contribute to it so others have a better chance at choosing their rates. But it’s better than nothing.

Having nothing is misleading.

If you think about it, minimum hourly rates are actually a solution for a problem created by OpenCraft due to not disclosing the ranges possible.

I wanted to mention that, but I realized that OpenCraft and members might benefit from being able to employ cheap newcomers.

However, once a person is approved as a core member, the range of hourly rates possible should be available for that member and they should have the right to update their rate based on that range.

Thanks for putting that nicely. This is 100% accurate and, unfortunately, there are no methods to facilitate this.

When I last discussed “renegotiation” with @antoviaque, I was told that “I should have priced myself based on what I saw fit, and that when OpenCraft wants to work with a client, they can’t ask the client about the budget range or reprice themselves. OpenCraft would have to charge the client a specific price and stick with it”.

But based on what you’re mentioning and since @antoviaque compared members to OpenCraft dealing with its clients during our last discussion about this topic, it should be fair for members to increase their own prices as well.

I’ll give an example of the OVH fire. When the OVH fire happened and we had to move our services to different regions.

I had no idea during that time about certain parts of our infrastructure; I was learning as I go. I spent HOURS (large amount) redeploying things. Please keep in mind that @guruprasad and @giovannicimolin were helping me out on mattermost, synchronously.

Someone as skilled as @guruprasad or @giovannicimolin with OpenCraft’s infrastructure could have finished this work in less hours than what it took me.

Even if each of them made 3x as much as I do, I’m pretty sure I would’ve costed OpenCraft just as much, or even more, as what it would have costed for them to resolve that issue.

If I didn’t have them to help, synchronously, I would have spent even more time on the issues I faced…

I hope this shows that contract renegotiation isn’t just being proposed for the benefit of developers but OpenCraft as well.

1 Like

:100:

And yeah even if a newcomer joins with a lower rate, their first few months is eating up unbilled time (their own time + time of core members) through onboarding, support, mentoring, reviews, etc. It also takes newcomers a while to become productive with our stacks. Any kind of churn is very detrimental to the company.

I’ve had similar experiences… offtopic, but to reiterate, we need specialization. This kind of thing happens too often here. It’s great if it’s part of learning/onboarding to a something you’ll be working on often, because this is excellent for learning! But if it’s a once off thing outside your normal specialization, it’s really a waste of time; same if we don’t specialize, and this is just something added to the huge range of things we need context on but probably won’t touch for another year. :confused:

5 Likes

Point taken. Hadn’t seen it that way! The fact that we hire within a relatively wide range of rates indeed has a similar effect. edit. And I also agree that keeping churn in check is of utmost importance.

4 Likes

I also prefer being paid by hour and not with benefits. The thing is that most companies doing “salary plus benefits” also offer a better salary than our hourly rate. So, if your company decide to not offer any benefits, they should provide better salary than the most company, which is not the OpenCraft case.

Same for me, I have in mind to slowly allocate less time to OpenCraft to actually do freelance contracts at regular prices. This is not something I am happy with but I don’t really have the choice right now.

Also note that a lot of companies are offering pregnancy leave, offering a working station, a minimal budget to set up a working room, paying Internet bills, etc.

It may vary based on your location but also my freelance “company” taxes are changing every year and for now, I am just less paid compare to when I joined OpenCraft because of my tax rises. :joy:

True. :+1:

I remember reading this part and I really was: “It is a trap? Is my application really being process by a human?” when applying and I was mostly not going to because of these parts, but here I am. :smiley:

To be honest, the minimum rate + no negotiation + no benefits is starting to hit pretty hard on me. And as other members said, this is really affecting my motivation even if OpenCraft is the best company I have ever worked at, and that I really love, as a company and also for people I am working with. But knowing that I will not stay long here because of the low hourly rate, is kind of sad. :frowning:


Just an extra thought. I don’t have all the clues but maybe, not having any benefits, no negotiation, and the fear to put a too high hourly rate may be tightened to the difficulty to hire people?

3 Likes

Thanks for bringing this up @nizar ! It’s definitely always good to discuss these things - even on points where there might be disagreements, it’s better if we know and talk about it.

…which isn’t bad for a minimum worldwide salary? Especially considering the fact that this is based on 30h/week, with all overtime paid - even taking into account the fact that OpenCraft hours are all “real” work (ie doesn’t include breaks, which are counted in time spent in an office for example), the expectation in most of the development companies I’ve worked for is to put in at least 40-50h/week - and sometimes much more than that. The way we work allows to get a better work-life balance by working less if we want to (and we encourage it), but that’s something to keep in mind while comparing salaries.

I can see your point though, when starting with a very low rate it can take a lot of time to recover from it – that’s actually why we have the minimum salary. It can make sense to increase the minimum rate a bit further, to reduce the spread - it contributes to reducing disparities within the team, and within the world.

I looked at what we can reasonably do here – and I’ll increase the minimum rate to 35 euros/h. This is already a good rate on international remote jobs, which allows to live comfortably almost anywhere in the world. I’ll apply it when we do the round of increases in January, and include the raises received since joining on top of it, retroactively. :slight_smile:

Concretely, this means that if you have joined with a rate inferior to 35 euros/h, you’ll get a raise to a rate of 35 euros/h + the % raises that have been applied to your rate since you joined - for those who have joined after 2016, that’s 35*(1.1)^n - with ‘n’ being the number of full calendar years since you joined.

Note that this is the rate for a single hour of support, and isn’t necessarily representative of the rate for larger volume of work, especially for long-standing clients.

If we did this, as mentioned by others, it wouldn’t take long for everyone to figure out the maximum rate that can be asked, and everyone would ask that – ie we would end up with a unique rate.

True, this is a loophole that hasn’t been thought through. People returning to OpenCraft have had the occasion to figure out the range that can be asked, so allowing people who return to set a new rate gives them an unfair advantage. We probably need a better rule here to avoid that - maybe based on the previous rate, with only a percentage of the raises applied for the time the person wasn’t at OpenCraft would make sense. To still reflect the additional experience gained in other jobs, but closing the loophole and keeping it more advantageous to stay rather than leave. Some people might choose not to return because of this, but I’d rather prioritize keeping things fair for the people in the team rather than incentivize leaving it.

That’s a great idea – it would be good to have that, it would help taking a more informed decision for people joining, and reducing surprises. It might be a bit tricky to figure out all the specifics for each person, like the applicable tax rate, but those could be fields to set by the applicant?

That’s a good point - it’s a bit unfair currently for people joining early in the year. The percentage based on the time worked during the first year works for me. :+1: I’ll apply that on the next round of raises, in January, to people who have joined this year.

With the switch to trial projects, people will be joining the company immediately, so they will get the minimum rate as soon as they start. For the initial test phase, given that we don’t know yet if the candidate does a good job, it doesn’t seem unfair to me to pay them what they asked, and to raise the rate once we consider the person a proper team member.

If by career growth you mean getting a raise when changing positions - it is meant to be covered by the yearly raise. Even when switching jobs within a company, it’s rare to get 10% out of it - especially to get this on a yearly basis. These are pretty fat raises!

And there isn’t even a need to ask for them or negotiate them. It’s not that we forbid negotiations & asking for raises – it’s more like asking automatically for everyone, and giving the highest raise we can provide to everyone. The alternative, standard individual negotiation, wouldn’t allow to ask for more, it would just be a different distribution - with more given to those who negotiate, and less to those who don’t, or not well. Plus all the side effects on politics and competition that we have already discussed…

9 Likes

It’s “not bad”, but it isn’t good.

Such a rate, with responsibilities, is not enough to provide members with a good future. A member who cannot ensure their future in OpenCraft will seek it elsewhere.

As you mentioned, 30h/week at OpenCraft are pure work (no breaks, no time spent in an office).

At an office, usually 40h/week are needed to ensure 6 hours of productivity, because water breaks, and breakfast/lunch breaks, and interruptions are taken into account.

At a “not so strict” office, I usually ended up having breakfast and lunch, while hanging out with co-workers, during my working hours.
Sure, a more strict regime would result in more productivity, but even then, breaks would be accounted for.

Accordingly, 30h/week at OpenCraft is equivalent to the 40-50h/week spent in offices. For such reasons, most members who start off working 40h reduce their commitment to 30 hours.

We’re not working less because our commitment is 30h/week, we’re actually working a similar amount or possibly more.

Accordingly, a 40h/week office job is equivalent to OpenCraft’s 30h/week.

We aren’t really having a better work-life balance. A better work-life balance would be having a 25h/week commitment at OpenCraft, which I hope to have eventually.

However, that’s not possible because the minimum hourly rate isn’t enough for me to decrease my commitment to something like that.

That’s a wonderful step in the right direction. A 35 euros/h is an improvement and giving members the % raises as well is extremely nice. I appreciate you considering this. Thank you!

That’s understandable. Thanks for the clarification :+1:

Allowing members to update their prices is essential, having an extremely rigid structure makes it extremely difficult for members to guarantee their future at OpenCraft.

I love OpenCraft and I want it to be a space where I can spend 5 to 10 years growing in my industry. It combines education, open source, and freedom (well in most things but updating prices :stuck_out_tongue:).

I know talk is cheap, but when I say I want to spend time here, I don’t mean it lightly. Yet as my life circumstances got tougher, I started reconsidering things. Life is way too flexible, and OpenCraft’s compensation process is way too rigid.

Previously, you compared “providers” or members dealing with OpenCraft to how OpenCraft interacts with its clients. I’d like to do the same here…

Similarly to how OpenCraft has built a strong relationship with its clients, members who have been here and are trying to solve issues they and others are facing have an extremely strong relationship with OpenCraft.

If the clients know that OpenCraft has their best interest at heart, then OpenCraft should trust that its members have its best interest at heart.

In addition, we aren’t taking away the option for OpenCraft to agree or disagree to requests. OpenCraft will always be the one approving or declining those updated prices.

Similarly to how clients deal with OpenCraft, OpenCraft can choose to find other “providers” or members if certain providers are requesting something out of OpenCraft’s budget.

I understand that a lot of members did not like the risk of losing their job by requesting a rate which is out of OpenCraft’s budget; however, I think it is essential in our case, especially if we want to consider OpenCraft as a client members are interacting with.

In order to protect, both, OpenCraft and the “provider” or member, we can have a specific process in place where the member has a longer termination period which pays the rate which the member already has.

Having the freedom to update one’s price is crucial. OpenCraft will also have the same freedom in accepting or denying that price.

Please don’t do this. If a rate was doubled at another job, something like that would eliminate all chances of going back to OpenCraft…

It is also unfair because members who started off with minimal rates will be anchored down.

There isn’t a problem with people leaving OpenCraft and coming back with increased rates. After all, those members have earned the right to request such rates by receiving better offers which prove they are worth every penny.

The problem is with the current restriction of not allowing people to update their prices. If one receives a better offer which matches their current living circumstances, such an offer is just as valid even if they choose to decline it. People don’t necessarily need to leave OpenCraft to be able to increase their rates.

That’s a nice improvement as well. Thank you for that! I appreciate that as well :smiley:

I agree with that. It is reasonable. It’s nice though that new members will get the minimum rate using the trial projects, though :+1:

I understand these are fat raises. But the problem isn’t with the raises, but the rates initially set.

I’ll be completely honest here. First, I’d like to state that I have no plan of going anywhere. I have no intention of leaving OpenCraft, which is why I’m working hard on improving things which, I feel, counter a member’s success.

However, an application of mine was approved to a company at 240% the rate I make at OpenCraft, which is the minimum hourly rate.

That application was not in the intent of changing my job, but better understanding how much I can charge for an hourly rate.

With that said, even with the 10% yearly raises every year, I need 8 to 10 years at OpenCraft to reach such a rate.

I understand that different companies have different capabilities. My intention here is just to show that regardless of these raises, the rate I initially set was extremely low, and to recover from it, it would take, easily, more than 5 years…

This is why my intention isn’t to allow negotiations, but to allow members to update their prices. Such changes in prices wouldn’t be negotiated, it would align with OpenCraft’s philosophy of directly approving or declining an offer.

This is similar to how OpenCraft deals with “providers” or members, when they first apply.

This would make OpenCraft a client for these members or “providers”, which entitles OpenCraft to decline any updated rate out of its budget.

But not having that option at all, is not fair, towards us or OpenCraft. I’ve already stated my case; however, there are a lot members who are facing similar issues due to not having the freedom to update their prices.

A lot of amazing members are having to do “side jobs” to make the income they desire, because OpenCraft prevents them from updating their rates.

These members, accordingly, spend less of their hourly capacity on OpenCraft. Accompanied by feelings of being under valued, burn out by doing two jobs, these members end up contributing much less than their actual potential to OpenCraft.

If these members could update their prices, they would put all their effort towards OpenCraft, only, and their own mental health instead of having to catch up on “side jobs” to make the amount OpenCraft prevents them, indirectly, from making.


I understand your concerns behind negotiations and updating prices.

I even set measures in place for your benefit, and I received serious comments from other members about them.

But my intention here isn’t to keep this freedom in-existent. My intention here is to create the freedom we all deserve, OpenCraft or its members, when dealing with clients, while ensuring OpenCraft is not violated.

I really hope we can discuss a specific process which provides members with this freedom, while ensuring OpenCraft’s benefit.

2 Likes

I exactly have the same feeling. For me it’s like a “trap”, being in an amazing company, but with a very low and non-negotiable rate.

If OpenCraft can reconsider its price because of client relation wellbeing, I think doing the same thing with the people that are making OpenCraft such a great company, should also be possible.

One other thing with the instant rejection of renegotiation is the absence of discussion, understanding, and desire to keep someone important for the company. Not only as a human but also as someone very competent and with a lot of knowledge. Refusing a senior raise, resulting in a leave may cost so much more money than actually accepting a raise.

3 Likes

Thank you @antoviaque for your feedback, and for having already committed to a few significant changes — which I’m sure will improve the experience of team members who are on the lower end of the compensation spectrum. If we continue having good years with 10% raises, someone who’s currently at the lowest rate will be doing €42/h in 2 years and €56/h in 5 years, which is a good improvement.

Here’s an observation, though: people who have 2-4 years done at OC and currently earn roughly between €35 and €40 will be now be earning less than those who are getting the “big raise”. I’m not great at math, but here are some calculations:

In January 2022:

  • People who joined <1year ago will earn €35 minimum
  • The “big raise”: People who have been at OC for 1-4 years and earned <€35 will be now earning €39, €42, €46, €51. Sweet!
  • Someone who earned €35 might increase to €37 or €39 if there’s a raise ← which is less (or equal at best) with those who were under €35 before — ok if they get €39, would be perceived as unfair if they get less IMO
  • Someone who earned €37 and who’s been at OC for 3 years might increase to €39 or €41if there’s a raise ← which is €5-7 less per hour than the €46 earned by someone who was earning >€35 with the same experience — this will be perceived as unfair?
  • Someone who earned €40 and who’s been at OC for 4 years might increase to €43 or €45 if there’s a raise ← which is €6-8 less per hours than the €51 earned by someone who was earning >€35 with the same experience — this will also be perceived as unfair?

The results of this might be: “hey look my colleague who was making the minimum wage is making much more than me now”.

Did I understand the numbers correctly?

There’s the argument that the person who earned <€35 has had more money available to them in the previous years, but it doesn’t do much for me.

So what’s the solution here (if you also think this is an issue)? I think we should also guarantee a 10% raise in 2022 to people with at least 1 year at OC who currently earn between €35 and €40, to even things out → they will earn a minimum of €39, which puts them on par with the lowest bracket of the “big raise” rates.

Am I making sense here? What do you think? Other ideas?

1 Like

I’m glad you appreciate it :) This is a pretty significant increase of cost for OpenCraft, so I hope it helps solving the main issue here.

Are you saying that you spend 10-20h/week doing unpaid work? If so that’s a problem, and we need to look into it. The breaks aren’t included, but all the time spent working should be. Or maybe you’re saying that in another company, work is stretched to last longer? If so, it remains that you recover the time, and can use it for something else - there is no need to “be there” just because the boss would frown seeing us not being there…

I disagree. I think, on the contrary, that the current way we handle raises contributes a lot to create a collaborative atmosphere, and we do invest heavily in retaining and evolving the team, through some of the biggest raises in the industry. Allowing to renegotiate the rates would require to forgo the way we currently handle it, as we would either adopt the “standard” way to handle raises, or end up with a standard rate at the max of the range for everyone. Neither of those options are desirable, so I’m saying no here.

You pointed out an accurate problem, with people starting too low to catchup - but with the new minimum rate, at 10% raise per year most years, everyone has a solid base and steep regular increases. You might be able to get more from some companies by switching (though you won’t know what they ask for that price before going there - there is much more to a job than the salary), but even with the minimum rate, at 10% it climbs quite quickly.

There might be something I miss, but I don’t think so? The retroactive application means that people who joined with a rate lower than 35 euros/h will have their rate updated to match what it would now be, if they had said “35 euros/h” when they joined. So someone who earns 35 euros/h now would have had to join this or last year (otherwise their initial rate would have been lower than 35 euros/h when they joined, if you include the raises) - so it’s normal that they only get one potential raise in January?

2 Likes

This part I get :+1:

This part I don’t understand.

Allow me to illustrate my point with another (actual!) example from the company:

Joe (fictive name, hehe) currently earns €37, and has been at OpenCraft for 3 full years. If we don’t get a raise in January, Joe will be making €37 while Sarah (who also has 3 full years at OC) has now jumped from €29 to €46. Even if the team gets a 10% raise, Joe will be making €41, which is still €5 less than Sarah. See the issue here?

There are only very few edge cases like this, and I see this as an issue that can be easily resolved.

1 Like

I was struggling to understand this jump, but in re-reading Xavier’s post I found the source:

So if Sarah joined in Jan 1 2019 for €29/h, the math seems correct: she’d be eligible for three 10% raises (assuming that’s what happened over the last 3 years) on top of €35.00, which does in fact result in €46.59.

Unless, of course, what @antoviaque means by “including the raises received” is the value in Euros of each raise as it happened (€29.00 + €2.90, followed by €31.90 + €3.19, etc), as opposed to a percentage over the new value of €35,00. If so, the number would be slightly lower, at €44.59.

If I understand this correctly, I don’t think the situation you describe is possible, because for Joe to be making 37 after working for 3 years, Joe would have had to start at a rate that’s below the new minimum. Since the minimum is applied retroactively, Joe would get 35 + 3years of raises, so the same as Sarah.

Yep, that’s how I calculated it, based on:

It definitely helps! :smiley:

No, that’s not what I’m saying.

I’m saying that in offices, 40 to 50h/week are as productive as 30 to 40h/week at OpenCraft, and possibly even less.

Spending 6 hours a day working at home would be much better than spending 7 or 8 hours an office.

Some people don’t have an issue with that. For me, ideally, it would be 6 hours at an office. At OpenCraft, that would be a commitment of 25 hours a week, instead of 30.

This, personally, would help me have a better work-life balance.

I’m glad you clarified further why you said no for such a proposition.

I understand your stance on the situation. Although I have a lot of points where I disagree about treating everyone fairly, my goal is not to disagree or to agree with the processes you have in place. My goal is to refine the processes so they better fit a developer’s needs.

Accordingly, I hope to propose a more desirable option than the ones already discussed.

Based on my understanding of how things are currently done, if we were to allow renegotiation or price updating, the reason why we’d end up with a standard rate at the max, for everyone, is because members are treated fairly and equally.

I understand the value in treating everyone fairly, instead of deciding whether a person deserves such a requested rate or not.

Before I start with proposing the new solution, I would like to address some things you’ve mentioned in your comment.

Please keep in mind that anything I’m arguing for here is not for myself, I have different plans in mind to address my hourly rate, which involves the new Developer Advocate role.
I’ll provide examples, as if I were a developer, but you can consider any other developer in those shoes.

You mentioned that money isn’t everything, and I agree with that. There are many other contributing factors to a job other than the rate. The environment and style of work (remote/office) definitely plays a role.

True, but let’s assume assume an OpenCraft member received a better offer from a different company, similar to OpenCraft’s size and age.

To give a more concrete example, I’ll use my offer as a reference, even though I have no use for that offer, at all, since I have a different approach in mind regarding the Developer Advocate role.

Assuming the offer is 60 euros, it’s understandable that the member would desire around 50 euros per hour, since ofcourse there are other factors than the compensation which make a company desirable.

To reach 50 euros per hour, assuming every year a team wide 10% raise was given, which isn’t always the case, the member would have to spend 5 years at OpenCraft.
Since such raises are not always the case, the member would have to spend at least 5 years at OpenCraft.

During 5 years, such a member would start of with 35 euros, then 38 euros, then 42 euros, then 46 euros, and finally 51 euros.

Assuming the member worked for 227 days a year for 6 hours a day, in these 4 years, the member would make 47670 euros the first year, 51756 euros the second year, 57204 euros the third year, 62652 the fourth year, and finally 69462 euros the fifth year.

In total, the member would make, during these 5 years, at most 288,744 euros.

If the member had the chance to update their price to 50 euros ever since they received that offer, things would be different.

Assuming the team receives 0 % raises during all those 5 years, which is very unlikely, the member would end up making at least 340,500 euros.

The difference between these two, is at least 51,756 euros, which is equivalent to a whole year of work.

So these team wide raises, although effective, would technically keep the member behind on a year of their income. After waiting 5 years to reach such an income, that’s not really nice…

Although I like the idea behind team-wide raises, I believe I already provided justification as to why it needs a sibling-process to help address the problems it cannot solve.

Accordingly, I would like to propose a new option, which is similar to how some companies handle team compensation.

The option proposing is: “providing members who have better job offers with a chance to update their pricing”.

The requirement of having a better job offer, than their requested rate, available before requesting to update their rate ensures that the following concern is addressed:

This will not affect all members, only ones who are considering leaving OpenCraft to pursue a different opportunity.

Having this option would allow developers to gain a better rate than they currently have, but still below what is being offered by another company.

This will also give a chance for OpenCraft to keep such a member, if the specified rate is appropriate in comparison to OpenCraft’s budget.

Instead of following a “standard” way of handling raises, team-wide raises would still be available to treat everyone fairly. In addition, unique members have the chance to progress without any internal comparable work or any internal politics.

In some cases, OpenCraft might not be able to provide the developer with increased rates. Then, such a developer can choose to remain at OpenCraft or walk a different path.

What are your thoughts on such a proposition?


Just to restate, I really appreciate the changes you’ve proposed. They definitely help resolve things.

I don’t want to appear ungrateful. I really am grateful.

I just have other propositions in mind, which I’d like to explore regarding the negotiations.
My goal isn’t to “pressure” you or anything. It’s just to find a proposition which would align with your perspective.

I hope this clarifies my intentions.

Oh, I definitely have misread, and misunderstood:

…sorry for wasting anyone’s time here. I mistakenly thought that only people who were currently under 35 were getting bumped up. But what I’m understanding now is that everyone who joined under 35 are getting bumped up… which is what Xavier and others have been telling me all along :stuck_out_tongue:

2 Likes

:open_mouth: this is awesome, thank you! :smiley:

That will result in a significant increase for me. :tada:

3 Likes

From what I have seen, it is the case in pretty much any industry that you can always earn a higher salary by frequently changing companies than by staying at one company. Companies usually “beat” existing salaries when they give you a job offer, so switching jobs a lot is the most effective way to ratchet your income up as high as possible as quickly as possible. That’s just a reality. (Though there is a limit as many companies don’t want to hire someone who clearly isn’t likely to stay very long.)

It’s also the case that OpenCraft does not compete for employees on the basis of salary. OpenCraft is in a somewhat small, competitive market and our competitors generally pay much less for their developers than we do. See this confidential document which I cannot share in a public post, or take a look at what Glassdoor says for Arbisoft: most salaries are well under PRK 100,000/month (505 €/month, or about €3/hr).

OpenCraft focuses on hiring very good developers, and to do that we pay them a lot more than our main competitors, but that also means our prices are a lot higher than our competitors. The result of this is that clients who don’t know much about us or don’t have much experience with Open edX will rarely pick us as their first choice. Clients usually come to us after becoming frustrated with a cheaper provider, or because we’ve been recommended by an existing client.

So there is limited room for OpenCraft to dramatically raise salaries and still be competitive. OpenCraft cannot offer the same type of salaries and benefits as a Silicon Valley multinational.

Which again, is why OpenCraft does not compete for employees on the basis of salary. What OpenCraft does provide are things like:

  • Flexible working hours and location (no commute!)
  • A bullshit-free environment
  • A drama-free environment
  • No coworkers who are idiots
  • Extremely competent coworkers
  • Varied and interesting work (full stack+)
  • The CEO is a developer himself and understands the work deeply
  • The CEO and company are full committed to open source
  • The CEO is the owner there are no investors to satisfy by slashing costs every quarter.
  • Take whatever time off you want
  • You are discouraged from working evenings and weekends, and you are encouraged to take regular holidays, even long ones
  • You can use whatever hardware and software you like
  • Paid travel to the conference and retreat in a different country every year
  • Paid training
  • You work on education software, something that’s unequivocally good for the world
  • Your work is open source and builds a public portfolio
  • You are paid to be involved in the Open edX community, which also builds your public reputation
  • Minimal meetings

I know you know the factors I’m mentioning above, but I think you’re under-valuing them, and you’re still more or less assuming that in the end OpenCraft should be competing on salary with about a 16% difference for the “other factors” that make OpenCraft nice.

My ex would come home from various jobs and have to rant to me almost every day about his awful coworkers, and then would wonder why I never complained about my work or my coworkers. It’s because I had nothing to complain about! I have seen what it’s like to work in an environment with incompetent people, lots of drama, or a company that monitors you for every second you’re “on the clock” and squeezes every last drop of work out of you. I don’t care how much money you’re offering, that’s a no from me.

I have never found Xavier to be anything other than fair and generous. My experience was the same as many other people on the team: that he offered to pay me more than I was asking. I know I could now earn a significantly higher salary at other places (and without looking, I have received higher offers, even from clients of ours who have tried to poach me). But OpenCraft has always provided a much nicer lifestyle to me, has been much more flexible than other jobs would be (e.g. I have cut my hours at OpenCraft and am running a startup at the same time, something which I really appreciate being able to do), and has given me the chance to work with a team and a leader that I really admire.

At the same time, I know the realities of running a company, especially a bootstrapped one, and I know that you can’t just say “yes” to everything or you quickly run out of money.

I do have sympathy for people whose life circumstances have changed and who suddenly are facing hugely increased cost of living that they couldn’t foresee, but I hope that’s an unusual circumstance which can have a one-off fix, and not something we need to solve in general. For everything else, I would think of the old saying, “comparison is the thief of joy”. You’ll always be able to find a similar job that pays more or a similarly skilled peer who is earning more if you go out and look for it. And then once you do, you’re going to be less happy even if you were happy before you knew. So what I focus on is my lifestyle: does my current job support the lifestyle I want and facilitate my career goals? The answer at OpenCraft has always been yes for me.

Of course, everyone is different and you have to make your own choices. We had some former employees who saw it very differently than me, who would e.g. butt heads with Xavier or never quite be on the same page as him. For them, OpenCraft was perhaps a frustrating place to work. And for others, being able to earn the “market” salary trumps all other concerns. It’s up to each person to decide what’s important to them. One thing I see consistently though is that people love working at OpenCraft and want to make it better even if it’s currently frustrating them for one reason or another, and this post is an example of that. I want to say kudos for that and thanks for working to make this team and this company better for everyone.

15 Likes

@braden I really appreciate the time you took to create such a detailed reply.

I want to say that based on the confidential document you have shared, I understand now that there is no need for renegotiation, especially with the minimum rates discussed in this thread. It definitely helps put things into perspective regarding ranges.

My goal wasn’t to bring salaries up to silicon valley levels. The main purpose I was requesting the renegotiation or updating of prices is to provide facilitation for a more significant progress in certain edge cases. However, based on the ranges I have in mind now, I understand that such a facilitation is not possible at the moment.

Things have already been stretched to benefit the developers (I did not expect the % raises to be honest, so that’s something that caught me by surprise).

I adore OpenCraft. It’s not possible to talk about things as openly as such discussions in other companies. It’s a place where I really hope to spend more and more time working.

As you mentioned, there’s a huge part of open source work which OpenCraft provides that isn’t possible elsewhere. This is what I wanted from the start, during my career. And now, I’m having even more opportunities thanks to OpenCraft.

I’ll be honest, I will continue to pursue topics whenever I feel like something doesn’t work well for any member, even if I can’t relate.

But there’s always a right time for different discussions, and I think, for now, the discussion has been addressed in appropriate ways, especially after the insight you provided me with.

I really appreciate the time everyone has taken to participate in this.

And I don’t say this enough, huge kudos to Xavier for allowing such openness and for spending a lot of time considering these discussions, because it’s easy to shut stuff down.

7 Likes

:100: to what @braden said. Thank you Braden for putting things in perspective, from many angles. And thank you @nizar for bringing up this topic — I think we’ve taken a good step forward as a team thanks to your intervention.

3 Likes