Tech salaries, staging promotion, and money management 💡
Monday Ideas — Edition #120
🖥️ DX — Engineering Intelligence Platform
Today I am happy to promote DX, which is an engineering intelligence platform designed by leading researchers.
DX gives engineering leaders and platform teams the data they need to take the right actions to drive higher ROI per developer. They serve hundreds of the world’s most iconic companies including Dropbox, Amplitude, P&G, and Pfizer 👇
DX has developed proprietary measurement frameworks including the DX Core 4 and DXI. The insights from the platform cater to leaders at every level of the organization, from CXOs to platform teams to frontline managers.
I am a big fan of their work and I also recently interviewed their CTO, Laura Tacho, on the podcast. It was a great chat.
Back to this week’s ideas!
1) 🔀 Tech salaries are messed up
A while ago I published an article about how to create a good job post. It was hard work, as I interviewed many hiring managers to gather ideas and real-world stories.
In the interviews, we often discussed including salary ranges in the job post.
Most companies don’t, and the common reason you hear is that it (should? kinda?) give them an edge at negotiating.
While I believe this is false anyway—including salary in job posts actually reduces negotiation— there is another, unspeakable reason, which surfaced in chats with managers I was closer with.
In many companies, the salary brackets are totally messed up, so managers don't want to disclose ranges even to their own employees — not to say to candidates. In fact, it is not rare to find people who earn way more than their managers, or peers with incredible pay gaps.
Public salary ranges in job posts would immediately turn into a giant embarrassment, as current employees would see the discrepancies with their own salary.
This a gigantic missed opportunity. Job posts that include salary routinely get 3-4x more candidates than those without, even for low ranges. I saw this firsthand during the time I ran the Refactoring job board.
More on good job posts 👇
2) ⬆️ If you use Staging, do automatic promotion
A couple of months ago I interviewed Greg Foster, CTO of Graphite, a popular tool for code reviews. Greg explained his team's approach to continuous delivery — here is the TL;DR:
They use a monorepo
They deploy via AWS CodePipeline
They use a high-quality staging environment
They have an automated merge queue for releases
The automated merge queue was particularly interesting to me, so he elaborated more:
The entire Graphite team uses this staging environment for daily work
There is one-hour lag time before promoting to production, which happens automatically
So, unlike most companies that require manual approval for staging deployments, Graphite completely automates the process.
It gives engineers one hour to check changes in staging, before they are automatically released in prod. This 1) reduces bottlenecks in the deployment pipeline, and 2) ensures consistent usage in the staging environment.
It feels like a great tradeoff between being fast and keeping quality high. So, if you use Staging, consider automatic promotion.
Full interview below:
3) 🏦 Money Management Toolkit
Last month we wrote about how engineers can handle their personal finance.
The article was super well received, and people especially liked the so-called toolkit, as Nicola called it, which includes the various types of assets you should look into, and how to allocate funds among them.
Here is how Nicola organizes his personal assets (I quote him):
⛑️ Emergency fund — 12 months of living expenses (with a family, I prefer to err on the side of caution)
🏦 High-yield savings account — 30% of my assets, currently earning a 4% interest rate
🏖️ Retirement account — currently, I don't have one due to limited tax advantages in Italy
📜 Bonds — 20% of my portfolio, offering returns comparable to high-yield savings accounts at present
🌐 ETFs — 40% of my investments, diversified across various ETFs
📊 Individual stocks — 5% of my portfolio, primarily in tech stocks like NVDA and AMZN
🎉 Fun money — 5% allocated for high-risk investments like crypto and options trading
The first thing I built was my emergency fund. While it's usually suggested to allocate money for 3-6 months of expenses, considering my personal situation (43, with two kids and living in an expensive area), I opted to accumulate liquidity for 12 months. This is deposited in a high-yield account, separate from my main one, currently giving me 4% yearly interest.
I keep 30% of my liquidity in a high-yield savings account where I can withdraw freely.
As I'm currently living in Italy, I decided not to have a retirement account. While you can save some taxes, the benefits are limited, and your money is locked up for a long time. This could vary based on your home country, so it's crucial to inform yourself about local retirement savings options.
Another 20% of my assets are in government bonds. I use these for planned expenses that I anticipate in the next 2 to 5 years (which is how I decided their expiry dates).
My risk tolerance is high enough that I'm prepared to see 50% of my assets potentially lose 40% of their value in a few days or months. That's why I decided to put them in ETFs, stocks, and also have some "fun money" for higher-risk activities like trading and cryptos. For ETFs in particular, I've automated the process, allocating a portion of my income every month to selected ETFs, which I rebalance periodically.
Remember, this allocation reflects my personal risk tolerance and financial goals. Your ideal portfolio might look different based on your age, career stage, and financial objectives. The key is to find a balance that allows you to sleep well at night while still working towards your financial goals.
You can find the full article below 👇
And that’s it for today! If you are finding this newsletter valuable, consider doing any of these:
1) 🔒 Subscribe to the full version — if you aren’t already, consider becoming a paid subscriber. 1500+ engineers and managers have joined already! Learn more about the benefits of the paid plan here.
2) 🍻 Read with your friends — Refactoring lives thanks to word of mouth. Share the article with your with someone who would like it, and get a free membership through the new referral program.
I wish you a great week! ☀️
Luca