Discussing Team Compensation and Possible Refinements

Yeah, it is definitely difficult. As @gabriel mentioned though, things are more explicit now as well, but were not before.

Sure thing :+1:

Let’s say I’m an OpenCraft member who has joined on November 01, 2020. The initially set rate is no longer sufficient because my life circumstances have changed.

Today is September 27, 2021. Although I would like re-price myself so that my rate is sufficient with the current life circumstances, I’m not able to yet because my contract is still valid.

Based on the current sprints in Serenity, there’s a sprint that starts on November 19 and ends on November 1. During the sprint before that, starting on November 5 and ending on November 18, I’d have a ticket where I have two options (in case I don’t want to terminate my contract):

  • Extend my contract for another year
  • Update the rate on my contract

If I choose to extend my contract, as is, the current process of team-wide raises remains the same. At the end of the year, I receive a team-wide raise alongside the rest of the team.

Meanwhile, if I choose to update the rate on my contract, I notify OpenCraft of the new rate I desire.

OpenCraft, then, reviews the rate specified. Since OpenCraft is not a fan of negotiations, the rate specified does not need any justification.

OpenCraft, similarly to when accepting or rejecting new applicants based on whether their chosen rate is appropriate, can either accept the update rate or notify the member that the specified rate is not considered appropriate.

In order to prevent “brute-forcing” your rate, once OpenCraft rejects the newly requested rate, you’re required to terminate your contract (within the contract termination rules/process).

By following such a procedure, we can ensure that members rely on team-wide raises instead of “updating their pricing by 5 euros each year”.

However, members who need to re-price themselves, due to life circumstances or whatever other reason, would have the chance to, at the risk of losing their job if the requested rate is not within reason.

Having such a strict process ensures that OpenCraft’s preferred method, of team raises, is applied. However, the very existence of such a process provides additional freedom which did not exist before and is needed.

Of course, the unbilled work is a massive part of the different expenses OpenCraft has.

Yes, indeed. This is my intention behind having something very strict, yet its mere existence provides commitment towards members who would like to remain at OpenCraft and empathy towards their personal situations, which are two core values of OpenCraft’s.

I see a lot of value in the way things are, being paid by the hour. It provides a lot of flexibility! It’s one of the best things about OpenCraft.
I know a lot of members have trouble with it, but once it’s documented in a way to ensure the developer’s success with it, things will change.

What I’m asking for is that members, making the minimum hourly rate, working consistently for 227 days in a year, have the same potential as other software engineers.

Regarding how that potential isn’t met by the current hourly rate, I’m hoping that my breakdown of the minimum hourly rate can provide insight. If it doesn’t, I’m happy to share a real-life example.

When I first joined OpenCraft, the handbook had no mention of the team compensation and the costs I should account for when setting those hourly rates.

Although they have been added to ensure the future’s developer success with the process, I wasn’t given such an opportunity, to choose an hourly rate with that insight in mind.

Although what you suggested sounds awesome, if future enhancements are made to the process, there should be measures that help previous members utilize it as well.

It’s not fair to implement it only for “newcomers”, and not backport it to existing members.

My goal isn’t to get rich off of OpenCraft, and I’m sure yours isn’t either.

All I want is space to breathe. I have no interest in being an entrepreneur or having my own company. And I’m sure that the current situation in Lebanon will eventually end.
I don’t want to remain in “survival mode” until it does.

I don’t want to lose a great job because of bad timing or bad circumstances.

One of the reasons I’m suggesting the Developer Advocate role is to transition into a non cell role and have the opportunity to change things for the better. But, I also don’t want other members to suffer from what I went through.

I always look forward to your comments on everything I do.
And I really appreciate your thorough comment!

I really hope my tone is refined in this comment, but if it isn’t I just want to clarify that the frustration isn’t a result of your comment or this topic.

1 Like

OK. This makes sense to me and I think it’s a great idea. It resolves the biggest concern I had with the process in that it doesn’t make it cheap to renegotiate. It has risk, but risk which is clearly worth it if your life circumstances have changed (after all, your only alternatives in that case are to suffer compensation you can barely survive on or else find new work anyhow). That allows us to have the chance of keeping those members who might otherwise feel forced to leave without making it easy to game the system.

This is also my preference.

Agreed. I do think we should have the tool and we should also implement something like you suggest.

You might be aware that I have my own business alongside my work at OpenCraft-- if I’m getting rich from anywhere, I’d prefer it be there :P But no, my present goal with OpenCraft is to have consistent steady income while doing something I enjoy alongside my other ventures which currently do not pay me. So yeah, not trying to get rich here, but I do want to make sure the team is stable and people feel they’re getting paid fairly.

I think you’d be a great fit for this role and I’m excited to see what you do with it! This is already a great start.

:) Understood! And thank you.

2 Likes

Yeah! I wish it weren’t. I don’t feel like it’s a taboo personally; might be because I sometimes have no filter :see_no_evil:

This is a fairly difficult topic.

Although monthly raises would be awesome, especially if they would reward members who have been with OpenCraft for longer, even more. However, I’m not 100% sure how appropriate that would be for OpenCraft. I have some ideas for a middle-ground such as rewarding those who have been with OpenCraft from 6 to 12 months instead of a strict year.

However, I don’t think I can say much in that regards until I hear more about it from other members of the management team, because I have no counter-argument in mind to be able to assist in formulating a more detailed suggestion.

Yes, that’s insanely accurate.

Yes, that’s one of the main issues at the moment. The solutions being created to address issues aren’t being applied as well for previous members.

I agree, there’s a lot of benefit in it. However, we should ensure that members making the minimum hourly rate should also have the chance to utilize such a tool and adjust their rates accordingly.

I wanted to bring that up, but I thought of the advantages of not adjusting the minimum rate until being confirmed as a core member. It would provide OpenCraft with more newcomers on the long run.

However, if it really would be negligible, it would definitely be nice to have.

I would really love the opportunity to solely focus on my career at OpenCraft, not in hopes of always growing in regards of my hourly rate. I eventually expect myself to “plateau” and no longer increase; however, that isn’t the case with the current minimum hourly rate.

So, I’m hoping this discussion raises the importance of having the option to reach such a “plateau” without having to spend 8 to 10 years at OpenCraft to reach it.

That would be a nice idea. I do want to see how this conversation ends though, first.

Xavier mentioned in a previous forum thread that OpenCraft is like an open source repository where there’ll always be issues and changes to resolve them.

I feel like with healthy communication, we can achieve results without an HR consultant. I could’ve waited until I transition into the Developer Advocate role before bringing such a topic up. But, I have high hopes that the weak points with the current process would be acknowledged.

I don’t expect things to be resolved easily or quickly. But, with more of this healthy communication, I’m sure we can progress and reach solutions which would align with the members’ success and OpenCraft’s.

3 Likes

While I sympathise with many of the points outlined in this thread so far, I have a problem with this particular one:

  1. It provides for a worse-of-both-worlds outcome if both OpenCraft and the contractor actually wish the contract to continue.
  2. It’s too prescriptive. OpenCraft needs less rules, not more.
  3. There is no need for it. If you’re unhappy with your pay, you can always leave for a higher paying client (which should be easy right about now). Then, if later you want to come back, you’ll be able to renegotiate.

This is not to say that I agree with the current “rates are non-negotiable” stance. It’s also worse-of-both-worlds in a certain way, because in a competitive job market such as the current one, OpenCraft will inevitably end up losing good people (as it already has!).

How about we just lose both negotiation clauses and let the market decide? If you want a raise, just ask for it. Either you’ll get it or not. If you do, great! If you don’t, you need more money, and you’re good at what you do, you shouldn’t have too much trouble finding more money elsewhere.

2 Likes

I agree with all of those points. However, I want to try my best to keep the job I like and help others keep theirs, in case they are in a similar situation.

I can’t convince Xavier to remove the rule about negotiations altogether right now. I can’t go from 0 to 100 in a single forum post. I also can’t convince Xavier to allow renegotiating contracts once every year, or even more frequently, at the moment.

I understand the rules set to protect OpenCraft, even though they are too restricting. Agreeing with the existing rules is a whole different topic, but I do understand his point of view.

What I can do is make small motions towards the right direction.

This time, I’m trying to find a way to enable developers to have the freedom of repricing themselves without leaving the team, with the risk of leaving.

With determination and communication, we can achieve better results. However, it’s a process. It’s going to take some time, but the current changes would help deliver results and make progress.

If we were to try to discuss changing the whole process, the discussion itself and then changing things would take too much time.

I hope this provides a better idea as to why I suggested such an idea, despite its restrictions.

We don’t do ongoing market negotiations because they necessarily mean that we will be in some degree of competition with each other on rates. The current ‘non-negotiation’ method means we’re effectively never in competition with each other on compensation-- there is not a scenario where raising one of us means preventing the raising of another, or where Xavier (or OpenCraft, if we decide to do some committee-based compensation thing) has to say ‘yes’ to one of us and ‘no’ to another. I went over this in a good bit of detail here.

I would not recommend changing the ‘across-the-board’ raises at OpenCraft, or falling back to individual negotiations. @nizar 's suggestion is something I’d like to try-- allowing for a team member to renegotiate higher at the end of their yearly contract, while retaining the same straightforward ‘no-negotiation’ rules as before.

On reflection, there’d still be (in my opinion) a pretty obvious saavy solution you could have if you were in this situation, deciding to renegotiate. You’d just ask other team members what they’re getting. If they’re game to tell you (which they may not be, but, hey, they might-- and you’d only need the answer of one person rated higher than you to know you can go ‘at least that high’ minus any percentage raises they may have had) you might be able to infer what their rate is and try to get one that’s in line with them. If enough people were game for this, you might have a situation where everyone ends up with the same (or near same) rate anyway, at the higher end of OpenCraft’s bound. I’m not sure how you fix that.

@nizar It may be that there are resources online talking about alternative compensation structures worth exploring. I’d especially look for methods used by organizations which attempt to stay flat. There may be some ideas worth exploring that we haven’t looked at yet.

2 Likes

I agree with @adolfo, this part makes me uncomfortable:

While I understand the reasoning behind the suggestion, it feels like a bit of an overkill. I don’t know about others, but it would make me feel like unless I’m facing a life-changing financial situation, I shouldn’t bring up negotiating my rate even if I’m not happy with the team-wide raise, because that would mean losing my job. No matter how good we are at what we do, the idea of losing your job is always going to be stressful.

We may not have an option to re-negotiate our rates at present, but bringing it up definitely doesn’t feel threatening now!

Putting in “strict processes” shows a mistrust in individuals and that’s quite opposite to OpenCraft’s values. I also personally feel secure knowing that my contract is “unlimited by time” - it brings a certain level of assurance to me, at par with being a “full-time employee” in any other company, and that wouldn’t exist if it were limited to one-year period.

I’m not against people re-negotiating their rates, I just don’t think it needs to be so rigid (current company stance included). Alternatively, we can have a yearly check-in with everyone about it. This could happen just after team-raises are announced and could even be automated. Everyone could have a choice - either continue with the revised rate, or explain why they’re unhappy with their rates and what would be their preferred rate. The final decision to accept or deny such requests would remain with OpenCraft.

+1 for this :+1: .This definitely would have helped me when I joined.

2 Likes

Hmmm. When you frame it this way, I feel less confident about the approach suggested.

What if, instead:

  1. We kept contracts ‘unlimited by time’
  2. We built the rate tool
  3. We gave current core members a one-time opportunity to readjust their current rate with the tool
  4. We make sure newcomers get the tool as part of their interview process
  5. We maybe keep the current policy of no renegotiation for now. While it would mean that sometimes someone might be more incentivized to leave and come back later, it should be much more rare now that everyone has access to that tooling.
3 Likes

I’m sure there is @Fox, but I currently don’t have enough time in my sprint to do such readings.

My intention with targeting this topic the way I did isn’t to change the process, but to ensure the developer’s success in the light of the current process.

I have plans to later on discuss the whole process, but until I can read about other processes used by similar companies, I would prefer not to start this topic just yet.

I understand that a lot of people don’t agree with my suggestion because they think the whole process should be refined, not just small points about it.
But I hope they can notice that I’m trying to make a change that can be applied, as soon as possible, which the team can benefit from. Once this “patch” has been added, our breath would be prolonged and we would be able to explore a solution which would require more patience.

I understand that, and it makes me uncomfortable in some situations as well.

In most cases, though, especially after contributing significantly to OpenCraft, updated rates are most likely to be accepted. The more time you spend at OpenCraft, the less likely OpenCraft will choose to let you go over a disagreement in hourly rates, given that they are reasonable.

This rule is not set to make members afraid of choosing their rates. I understand it does, though; I’m not trying to invalidate how others feel about it.

It’s set to convince management that we’re still considering their benefit alongside the members’, and not the members’ benefit alone.

For these reasons, it’s more of a formality.

You can’t even bring it up, right now, though. My intention is not to make it threatening. But I can’t expect management to change their whole processes at once. Change is often two steps forward and one step back.

I understand that, but to move from “no existing process”, which protects OpenCraft, to a new process, we need to find a middle ground between what we want and what OpenCraft already has implemented.

The middle ground I reached was a “strict process”.

Later on, such a “strict process” would be what’s available at OpenCraft, and then the middle ground would be a more flexible process.

I understand that a “strict process” is not a solution, and it isn’t. It’s just a patch, while we build a better solution.

One of the main reasons team-wide raises is discussed in the handbook is so people don’t increment their rates by 5 every year. This is the counter-argument for such an argument.

I can see the advantages of that counter-argument, from OpenCraft’s perspective. So for now, I chose not to bring such a suggestion up in my post because I don’t have a good-enough refutation for it.

But hopefully, with enough time, someone on the team can build a good one.

I’ll be honest, this is something that I did not account for. My bad!

You’re 100% right, having an “unlimited by time” contract is beneficial for the whole team.
You’re right, contracts should remain unlimited by time.

I shouldn’t have mixed up needing to update hourly rates with the lifespan of the contracts.

Yes, that definitely needs to remain the same.

Ideally, members should have the opportunity to do so on a periodic basis.
People in other companies aim to utilize hierarchy to improve certain circumstances.

Since OpenCraft is flat, it would be nice to have the option to update the pricing without leaving OpenCraft.


As a member, I want to have the ability to update my hourly rate on periodic basis, preferably on a year, which OpenCraft can approve or decline. I also want don’t want to risk terminating my contract after a single denied “request”.

But as OpenCraft, I don’t really want members to “binary-search” their way into an appropriate hourly rate…

What do you think about having the contract terminated after 2 consecutive years of denied requests, given that the requests are done on a yearly basis?

Would that be more reasonable for members and OpenCraft? Would it also help prevent “binary-searching” your way to an appropriate hourly rate?

That way members who got their request denied year 202X can choose to update their rate in the year (202X + 2) without risking losing their job.

Let me know please…

1 Like

This pretty much summarizes what I think we should do. Obviously, one of the central issues in this thread is that multiple team members have lowballed themselves and are now unhappy with how much they’re getting paid (and my guess is that those people are paid either at the minimum rate or close to it). We could give core members a one-time opportunity to readjust their rate as @Fox suggested, but we could also raise the minimum rate significantly as @nizar suggested (which avoids individual negotiation, and newcomers would get the raise too → otherwise the same problem might happen again in a year). I doubt we can afford the numbers suggested by @nizar, but I’m in favor of raising the minimum rate, team-wide.

I’m personally ok with raising the minimum rate significantly (+€10 or +€15) even if this will affect our raise next year. I’d rather get a smaller raise and see my teammates happy :slight_smile:

4 Likes

Another issue is that members may have set a rate that was appropriate at the time, but due to changed circumstances they may wish to renegotiate. I’m sure opencraft agrees that renegotiation is better than losing team members simply because they wanted a raise.

Personally, I’m absolutely against the “no renegotiation” policy. In fact the whole combination of:

  • not publishing any numbers (averages, rate ranges, minimums, maximums).
  • the comments on the application form: rates will not be negotiated, a rate above the unpublished maximum will cause the application to be thrown out
  • no re-negotiations ever officially allowed
  • flat structure with no chance of promotions or recognition of senior vs junior

All of these are an incentive to put a low number in the hourly rate for the application, because a lower paying job is better than no job at all. And then you still have no idea - after working at opencraft for 2 years, I still have no idea where my rate sits in the acceptable range, or if opencraft is fairly paying everyone. I don’t know if the average is right at the minimum, or if some high flying silicon valley style rate.

I feel like the only situation where the current process would work fairly, is if you where experienced and knew exactly what rate you wanted (and knew how to factor in holidays, sick days, taxes, etc.), and were certain that the rate you wanted was within the hard maximum set by opencraft.

Most other jobs I’ve applied for or viewed in the past will publish an expected salary/rate range, and allow for some kind of discussion at the beginning of the process to get a feel from each other on what kind of rates will be expected.

4 Likes

I was one of the people who raised this issue with Xavier in the beginning, and it was part of the reason for having a minimum rate, it seems.

I don’t think my concern was that the rate I picked was too low. I was happy with the rate to start with, even after factoring in taxes and vacations. What I didn’t realise then though was that the rate I picked would form the basis of the rest of the raises here.

In my first job, I started as an intern, and my salary doubled when I was confirmed as an employee, and then my first raise was 50%, and I got a pretty good bonus as well. I still ended with a salary far below my starting salary here, though.

While I was happy with where I started, I did expect that over time there would be significant bumps in salary in the 20-30% range. When I learned that that wasn’t the case, I realised that over time my salary at OpenCraft would no longer be competitive, and I would either need to be happy with a lower salary or move on.

While I was usually happy with my salary, when I had to visit Montreal for the conference, it put a strain on my finances. It made me realise that while the country-hopping kind of life was a benefit of this kind of job, it just wouldn’t be affordable for me. Given the no-negotiation stance here, I wondered how OpenCraft would handle employees moving across countries.

I definitely think that if OpenCraft has to maintain a non-negotiable-once-set hourly rate, people need to be given more tools to understand not only their current needs, but also how their needs will evolve over time. Some people will join OpenCraft early in their life, single, with fewer needs and responsibilities, but their needs will eventually grow. They might join with a poor understanding of what they should be paid, or how working at OpenCraft will add additional challenges to their finances.

I saw mention of an assumed 10% tax rate. My marginal tax rate is 30%. Given my country’s complex tax laws, for my work at OpenCraft I have to file monthly tax returns, another set of quarterly tax returns, and an annual tax return, in addition to a yearly personal income tax return. There is also other monthly and yearly paperwork I need to file. This adds a personal level of meta-work for me. I had to hire an accountant, and a bookkeeper to meet these legal compliances. They are also not cheap. I would also like to save more for the future, for emergencies and for retirement.

If I knew all this to begin with, would I have picked the same starting rate I did? Definitely not! That said, I would still not have picked something very high or even in the range of rates being discussed here as the new minimum. The truth is, I don’t know what I would, or should, have picked.

To me, that is always the conundrum. If I get more money, it will obviously not make me unhappy, even if I am happy with what I get right now. I have said before that I am not bothered if someone else makes more money than me, even if they are from the same country. All I want is for the salary to meet my needs.

However, reading through here had made me realise that even understanding your needs is not as easy as it appears. When a rate is fixed across time, your needs aren’t just your needs for now, but also your needs for 5 years from now, and needs you can’t anticipate, and needs that aren’t needs yet.

I really don’t know what the solution is here, but I see a lot of good discussion going on here, so that’s a start at least. I hope we can find a solution that doesn’t make anyone feel devalued.

3 Likes

I agree that as a contractor or service provider, in theory you should be able to renegotiate your rates as needed. We actually do this with clients: we’ve increased our prices by 10% in January 2020 (after staying at the same rate for 2-3 years), and another 5-10% in January 2021 (+10% on our hourly rate for new business, but only +5% for current clients).

OC’s yearly price increases are therefore in the range of 5-10%, which is the same % that OC allocates on raises on most years.

If team members renegociate and ask for more than that, they’re eating directly into the company’s profit margin. If only a few team members do it, it would probably be fine. But this can hardly scale IMO, unless we take it into account when doing forecasting. Which brings to me the following reflection:

For the question of renegotiation, the tricky part for me (with my admin hat) is the uncertainty that it brings:

  • Financial (what are raises going to be this year, next year?)
    This complicates financial forecasting for the company. Not knowing what your payroll is going to look like into the year means you probably have to do wild assumptions in your forecasting. I don’t think it’s a question of “can we afford it”, but rather “how is this going to work”. Companies don’t like uncertainty, and this is why most of them have positions with known salary ranges which provide a lot of predictability.

  • Resources
    If the outcome of negotiations is that either the new rate is set or the team member ends their contract, then we create what I think is a severe resource planning issue (how many team members are going to leave this year?).

I think this is indeed the assumption made by the company, minus the max rate part. And this is why I think @Fox 's idea of providing a calculator would help a lot.

The threat of throwing out the application because of a high rate indeed pushes the candidate to lowball themselves. I personally think we should change this, and make a counter offer. Either the candidate accepts it, or doesn’t take the job. Over time, I think the result would be higher rates overall, but it would (hopefully) resolve the issue of people not being happy with their rate.

For similar reasons, I learned the hard way that I should have asked for a higher rate when I was hired. But I have to admit that the three raises I’ve had since then have helped a lot. In Quebec I pay ~52% in income tax, and also need an accountant to handle tax returns, etc.

Same here :slight_smile:

2 Likes

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