Hacker Newsnew | past | comments | ask | show | jobs | submit | more techcode's commentslogin

I think that salaried devs (and related tech folks) are in the top x% locally - basically everywhere.

There could be a big spread from smaller tech companies, and governments/police/military/etc that pay low even for tech positions.

So actually I would be really curious to meet/talk to someone that took a tech job in say police/military or such.


This is pure speculation, but I think there's probably a large variation in salaries in the 90/10 split of senior/staff+. The majority have decades of employment with the same employer rising up from junior/graduate level, whereas the others joined to bring "modern tech" experience with them to help execute a revamp.

Most devs are probably in the top 20-30% band making tech a relatively "normal" (but good) salary in the local region.

I could be entirely wrong though :)


Waste of time you say? Were never life changing?

I'm curious to hear what's your definition of "life changing"?

Salaried tech compensation in Europe grew quite a lot over the last 10+ years. Still behind US, but no longer by as much as before.

Back in 2005, 2010, and even 2015 - companies were benchmarking salaries locally (and even down to that specific country). With FAANG opening up shops in EU, all other bigger tech companies started to benchmark compensation somewhat globally.

I know plenty of European software engineers that got a house with 30 years mortgage, and (with salary, RSUs and bonuses) paid it off in <10 years.

Granted, cost of real estate is now 3x compared to 10-15 years ago (other costs are also bigger, but not 3x). From what I've seen it's the same just about anywhere in Europe.

So if you just got a mortgage now, it will take longer.

But still - there's usually enough salary left (even after spending on traveling with 25+ vacation days) to put loads of money into rainy day funds, expensive hobbies, as well as investments/FIRE.

Most other sectors are not really close.


Nomads and even more permanent expats use less of the infrastructure and amenities.

Not just for periods before and after they are living there - also during their stay.

For example. If they (nomads) lose their (remote) job - they won't get social benefits payments like the "locals".

They (nomads) also don't accrue retirement/pension which is usually part of income taxes.

And of course they pay all the other "taxes".

If they rent/buy anything - there's VAT. If they drive around in their car - they pay registration, insurance, road tax, highway tolls.

Pretty sure they also need to purchase some sort of health insurance.


I think it's pretty clear that digital nomads, like tourists, use _more_ taxpayer resources because they use public infrastructure much more than the locals, who like most people globally live simpler lives mostly at home.


It's not clear to me.

Perhaps we have different ideas about what "taxpayer resources" and/or "public infrastructure" is?

I was highly skilled migrant/expat, now "naturalized Dutch", and work for Booking.com - so I know a thing or two about tourism (beyond just traveling myself).

Tourists least, digital nomads a bit more, and expats even more - use public infrastructure.

But over lifetime, locals use order of magnitude more than expats.


> I was highly skilled migrant/expat, now "naturalized Dutch", and work for Booking.com -

Interesting. We may know each other. Are you C-suite?

> so I know a thing or two about tourism (beyond just traveling myself).

Appeals to authority are always suspect, but it takes staggering arrogance to claim employment at Booking.com as your authority on the economic impact of tourism. But you know the old saying about making a person understand something when their pay cheque depends on them not doing so.

> Tourists least, digital nomads a bit more, and expats even more - use public infrastructure.

You have this order exactly backwards, with tourists using proportionately the most public infrastructure, and residents the least.


While I agree that appeals to authority are suspicious - no idea how "I know a thing or two about tourism" could be interpreted as claiming "authority on the economic impact of tourism".

So far your views/opinions seem to be very "black and white". And beyond stating them - I'm yet to see anything to support or even just explain/elaborate them.


I'm not C-suite - I gave up on management track long time ago.

I'm still waiting to see how/why my order of who's using public infrastructure is wrong/opposite.

Care to explain?


>Nomads and even more permanent expats use less of the infrastructure and amenities.

So what? Public/societal services aren't pay-as-you-go.

For example, I also never used any public schools in my current country nor do I have kids of my own who use them, but I still pay for them via my income taxes because that's what's necessary for a functioning society. You're not exempt from paying taxes just because you use less public services.

So why should digital nomads be exempt from contributions to the society they enjoy living in?


I'm not saying that digital nomads should be completely exempt from contributions.

I am saying that over their lifetime - they use much less of the societal services in their "remote/nomadic" locations compared to lifetime-permanent/locals.

And governments calculated that in.


>I am saying that over their lifetime - they use much less of the societal services

If you put it like that, other groups of people also use less societal services. Why aren't they getting the same tax exemptions too?


That's something for regulators, politicians and society overall to figure out.

Personally - I'm happy for my taxes money to be used for police or firefighters (and other things) and I still hope I never really use/need them.

At the same time. If The Netherlands hadn't had 30% tax ruling for expats, wife and I would've went back after my initial 12 months contract.

Back in 2010/2011 - even with software engineer salary, until 30% tax rule was granted for me - we were chipping away money we saved up living in Serbia.

Back in <=2010 wife and I were earning €1500~€1750 in Belgrade. Saving at least a third of that. In the NL the ~€45k gross (before 30% tax rule was granted) was not enough for rent, food and other normal (no car, not eating out ...etc.) costs.

But Dutch had 30% ruling, so even with one newborn we could still make ends meet. And 15 years later The Netherlands has 2 adult tax payers (at 0 prior cost for NL), and 2 children (born there, so same societal/taxpayer cost as any other NL citizen/child).


>Personally - I'm happy for my taxes money to be used for police or firefighters (and other things) and I still hope I never really use/need them.

Then .... we agree?

>At the same time. If The Netherlands hadn't had 30% tax ruling for expats, wife and I would've went back after my initial 12 months contract.

With all due respect, working for Booking in NL you were not a Digital Nomad, you were a local resident and local worker.

While you did get the tax reduction during that time, a local company in NL made use of your labor and not some foreign company like in the case of digital nomads.

It's apples to oranges


We're mostly agreeing.

And while digital nomads and expats are indeed apples and oranges. It seems you're missing the parts where they are the same?

Both digital nomads and expats didn't cost the country anything while those nomads/expats were growing up, got education ...etc.

Perhaps it's USA centric vs the rest of more "socialistic" countries POV?

Outside of USA - (specifically in Croatia, but also many other countries) child birth, subsequent parental leave, daycare, school, college/university and children healthcare are subsidized or even "free". Of course "free" means paid by all the taxpayers of that country.

And yes - I think that bringing in expats (implying there being more local business/employers, more corporate and income taxes) is better for a country/economy than bringing in digital nomads.

However when economy is heavily relying on seasonal tourism (and it seems like most of countries with digital nomad visa programs are), they also tend not to be the most suitable for other types of services/innovation/manufacturing/etc business.

They usually still need to spend more money on building office spaces, change the laws to make it more attractive for business to incorporate there...etc. And overall not feel like a ghost town outside of tourist season.

Perhaps Croatia (and other countries with digital nomad visas) are counting on digital nomads leading to more office space being built, some of nomads staying and starting a business, etc


>Both digital nomads and expats didn't cost the country anything while those nomads/expats were growing up, got education ...etc.

Yes. Then why should expats pay taxes and digital nomads not? Especially given that digital nomads will be the first to leave the moment the shit hits the fan and go to another country, while expats are more likely to stick around for various reasons like family, community, kids, familiarity, etc. It feels like the incentives are totally backwards unless your goal is more wealth inequality for the locals, more expensive housings, etc. You're screwing over the people who contribute the most while giving tax breaks to those who will leave on a whim.

Also, regarding your previous comment, your example with NL is an outlier in the EU. There's no way other countries here could give expats tax breaks and not collapse their welfare systems which are built on the socialist principles of having people constantly paying in the system, so they can't just do what NL does without going through a revolution.

The example is also survivorship bias since plenty of other people moved to NL to work on poverty wages initially lower than in their home countries, and then left because they didn't get to those magic six figure Booking wages. So the expats and the NL government got scammed, and the only winners were are the NL corporations exploiting cheap labor selling them the dream of potential future high wages that might not happen. Not exactly a society I dream of.

>Perhaps it's USA centric vs the rest of more "socialistic" countries POV?

What does this have to do with the USA? I'm talking from an EU point of view on what other EU countries are doing.

>when economy is heavily relying on seasonal tourism

Maybe it shouldn't. Because that only leads you into the tourist trap branch of Dutch diseases. Maybe it's best to build an economy on more tangible things that have some trick down effect, and not that only benefits landlords and hospitality business owners.

> digital nomads leading to more office space being built

How many digital nomads do you know who travel the world only to work in the same office spaces they try to escape from, and not from cafes and beaches?


"Locals are subsidizing their lifestyles"

Same feelings towards non-nomadic Expats in The Netherlands - because of the "30% tax free for Expats".

Meanwhile the truth is that some 15-20 years ago - Dutch government introduced that "30% tax rule" as a cost saving measures.

Previously expats in The Netherlands would collect bills/receipts for expatriation related expenses (e.g. language classes, international school for kids, differences in cost of living/housing ...etc).

And processing those tax claims was so much bureaucracy that Dutch government realized just giving expats 30% of gross income tax free for 10 years (reduced to 8 and then 5 years) is both less money than actual expenses used to be, and much less paperwork/cost.

And let's not forget that (definitely for non-nomadic expats, though arguably also for digital nomads) country didn't need to pay their birth/growing up, education ...etc.

And (especially for digital nomads) might not need to cover the costs for their old age health, retirement and such.


For FIRE - maybe check out Serbia (IIRC >1 year no CGT) as well as Greece, Malta, Cyprus ...etc.


Can you share more specific place(s) in Poland and Croatia for your "infrastructure and quality of life" being 2x different? And what infra and what are you looking at for QOL?

And the weather - well personally I haven't been in Croatia around New Years.

But last few weeks (it's same every year) it was 37-40°C - too hot. While in May you still need to turn on heating (or light a fire).

And from the rest of family that grew up in the Croatian coast (Dalmatia) - winters sound pretty crappy due to winds. Also because it's mostly still above 0°C snow is rare.

My wife said that as kid, they had to drive her to other part of then Yugoslavia for her to finally see real snow.


In Poland - basically almost every large city, from Warsaw to Torun. In Croatia I have been in Split and in Dubrovnik.

I'm looking at things like pavement construction, overnight leftover trash on the streets, quality of business signs, cleanliness of buildings, bike parking spots and infrastructure on them, % of restaurants trying to scam you, etc. That sort of things.


IMHO it's not really good comparison?

What would be ultra touristic places in Poland? Both Split and Dubrovnik are ultra touristic, and say Amsterdam is similar. Also the part of really old streets/buildings that are UNESCO and such protected and not supposed to be renovated.

And to me - Krakow seemed very similar to Belgrade (Serbia) and Zagreb (Croatia).


Yeah it's not a really good comparison due exactly due to factors you have mentioned.

But I have been in ultra touristic places in Poland restaurants genuinely don't want to scam you, which is the case in almost all of the restaurants in Croatia I have visited.


I didn't get the scam feeling in restaurants in Croatia.

Might be due to us (wife born in Croatia, myself in Serbia) being "effectively local".

The only unusual (though turns out it's the new norm) thing was brown skinned (probably from Southeast Asia) fastfood employee pronouncing our order number and telling me "Dobar tek!" (Enjoy your meal).

For me peak tourist scams are things like: - hop on hop off busses/boats (that cost more, and are usually worse for getting around than normal public transport) - all the hustlers like stereotypical Amsterdam RedLight or Barcelona Rambla "drugs" dealers, or random people (not waiting staff) trying to get you to enter way overpriced clubs/restaurant/etc. - restaurant selling €3-€5 frozen pizza as a "Real Wood Fired Italian Pizza Oven"

Otherwise - same as back home (used to be Belgrade Serbia, now Amsterdam NL) and when traveling.

I try to go into restaurants or fast food where locals go. Often recognized by police/ambulance/firefighters/taxi cars and uniformed clients, bunch of school age kids or student going there during scheduled breaks.


There are other tax exemptions in Croatia that might still make it worth it - especially in FIRE setting.

While say The Netherlands taxes your investments such as Stocks/ETFs (not their earnings/capital-gain/etc but literally just owning stocks/ETFs/etc) - in Croatia those are not taxed after you've held them for 1 or 2 years (don't recall if 1 or 2).

Similar (owning stocks/ETFs not taxed) in Serbia, Malta, Cyprus ...etc.


Not sure it's just those EU funds.

As Serbian/Dutch with wife from Croatia - I can definitely say that prices didn't rise only in Croatia.

Basically same % rise in (non-EU) Serbia, and The Netherlands.

Possibly elsewhere too - but NL/CRO/SRB is where were have family and spend enough time to really know.


Croatian price increases are topping the EU stats for years now and it accumulates, especially in real-estate. There are some comparable situations in EU, but overall I would say comparable countries like Italy, Spain, Greece did not have nearly as much price growth in the same period.

For example - personal opinion disclaimer - if Spain had better tax scheme for small business (not really sure on the nomad status there, but I am more interested in long term) I would probably move because the coastal cities in Spain are much better for similar prices, I would rather live in Valencia than Split/Rijeka/Zadar/Dubrovnik/Pula.


Our house in The Netherlands is now 3x more expensive than 13 years ago - from ~€200k to ~€600k.

We got lucky to move to NL and then buy house just around the time when post 2008 crisis was at the lowest point. Some houses are only 2x more expensive than back then.

Meanwhile apartments in Belgrade Serbia are now similar to price of apartments in Amsterdam/Amstelveen/etc from 10-15 years ago.

From what I've heard from friends and family - more of the same across France, Germany ...etc.


I came here to ask OP if they mean "without STEM degree", "without STEM education" ... Would physics degree (while STEM, it's supposedly not as close to Software/Tech as math or other types of engineering studies).

Loads of such not strictly TECH folks end up in Big Tech as data scientists, as well as programmers.

I only have ~25 years of "work" experience. I finished electrical engineering/electronics highschool (in parts of Europe you're 18 y/o by the time you finish highschool). And then just as I started with (computers focused) EE College - I also started freelancing. I started making websites/scripts/etc in the early 2000s.

It turned into full time contracting, and then even moving countries for "Software Engineering" job - all before I finished college.

Anyway - although in the last 2-5 years (Covid/Wars/etc) it became less common for companies to accept "graduates".

My impression is that it's more about hiring freeze in general, than the more recent "AI makes 100x developers possible" hype.

And by "graduates" I've seen both young folks with tech education but 0 work experience, as well as no (complete or at all official) tech education yet self taught and much more "work experience" from personal projects, competitions, hackathons.

And of course there's also other tech stuff - UX/design, db/net/sys admins and such.


What that post describes (all work going to one/few workers) in practice doesn't really happen if you properly randomize (e.g. just use random UUID) ID of the item/task when inserting it into Kafka.

With that (and sharding based on that ID/value) - all your consumers/workers will get equal amount of messages/tasks.

Both post and seemingly general theme of comments here is trashing choice of Kafka for low volume.

Interestingly both are ignoring other valid reasons/requirements making Kafka perfectly good choice despite low volume - e.g.:

- multiple different consumers/workers consuming same messages at their own pace

- needing to rewind/replay messages

- guarantee that all messages related to specific user (think bank transactions in book example of CQRS) will be handled by one pod/consumer, and in consistent order

- needing to chain async processing

And I'm probably forgetting bunch of other use cases.

And yes, even with good sharding - if you have some tasks/work being small/quick while others being big/long can still lead to non-optimal situations where small/quick is waiting for bigger one to be done.

However - if you have other valid reasons to use Kafka, and it's just this mix of small and big tasks that's making you hesitant... IMHO it's still worth trying Kafka.

Between using bigger buckets (so instead of 1 fetch more items/messages and handle work async/threads/etc), and Kafka automatically redistributing shards/partitions if some workers are slow ... You might be surprised it just works.

And sure - you might need to create more than one topic (e.g. light, medium, heavy) so your light work doesn't need to wait for heavier one.

Finally - I still didn't see anyone mention actual real deal breakers for Kafka.

From the top of my head I recall a big one is no guarantee of item/message being processed only once - even without you manually rewinding/reprocessing it.

It's possible/common to have situations where worker picks up a message from Kafka, processes (wrote/materialized/updated) it and when it's about to commit the kafka offset (effectively mark it as really done) it realizes Kafka already re-partitioned shards and now another pod owns particular partition.

So if you can't model items/messages or the rest of system in a way that can handle such things ... Say with versioning you might be able to just ignore/skip work if you know underlying materialized data/storage already incorporates it, or maybe whole thing is fine with INSERT ON DUPLICATE KEY UPDATE) - then Kafka is probably not the right solution.


(Author here)

You say: > What that post describes (all work going to one/few workers) in practice doesn't really happen if you properly randomize (e.g. just use random UUID) ID of the item/task when inserting it into Kafka.

I would love to be wrong about this, but I don't _think_ this changes things. When you have few enough messages, you can still get unlucky and randomly choose the "wrong" partitions. To me, it's a fundamental probability thing - if you roll the dice enough times, it all evens out (high enough message volume), but this article is about what happens when you _don't_ roll the dice enough times.


If it's a fundamental probability thing with randomized partition selection, put the actual probability of what you're describing in the article.

.25^20 is not a "somewhat unlucky sequence of events"


(Author here)

Fair enough. I agree .25^20 is basically infinitesimal, and even with a smaller exponent (like .25^3) the odds are not great, so I appreciate you calling this out.

Flipping this around, though, if you have 4 workers total and 3 are busy with jobs (1 idle), your next job has only a 25% chance of hitting the idle worker. This is what I see the most in practice; there is a backlog, and not all workers are busy even though there is a backlog.


With Kafka you normally don't pick a worker - Kafka does that. IIRC with some sort of consistent hashing - but for simplicity sake lets say it's just modulo 'messageID % numberOfShards'.

You control/configure numberOfShards - and its usually set to something order of magnitude bigger than your expected number of workers (to be precise - that's number of docker pods or hardware boxes/servers) - e.g. 32, 64 or 128.

So in practice - Kafka assigns multiple shards to each of your "workers" (if you have more workers than shards then some workers don't do any work).

And while each of your workers is limited to one thread for consuming Kafka messages. Each worker can still process multiple messages at the same time - in different async/threads.


To me it seems like your underlying assumptions is "1 worker can only work on one message/item at a time", right?

While you could also use Kafka like that - and it might even work for your use case, as long as you configure option (sorry forgot the name) that makes Kafka redistribute shards because particular workers/consumers are too slow.

AFAIK the usual way is for each worker to get more than one message/item at a time, and do the actual item/work in/through separate thread/work pool (or another async mechanism).

Kafka then keeps track of which messages were picked up by each worker/consumer, and how big is the gap between that and committed offset (marked as done).

It gets a bit more tricky if you: - can't afford to process some messages/work again (well at extreme end it might actually be a show stopper for using Kafka) - need to have automatic retry on error/fail, how quickly/slowly you want to retry, how many times to retry...etc. - can you afford to temporarily "lose" some pending (picked up from Kafka but offset not marked as done) items for random things (worker OOMKILLED, solar flare hit network cable ...)

We've actually solved some of these with simply having another (set of) worker(s) that consume same topic with a delay (imagine cron job that runs every 5 minutes). And doing things in case there's no record of task being done, putting it into same topic again for retry ...etc.


The other thing that's PITA with Kafka is fail/retry.

If you want to continue processing other/newer items/messages (and usually you do), you need to commit Kafka topic offset - leaving you to figure out what to do with failed item/message.

One simple thing is just re-inserting it again into the same topic (at the end). If it was temps transient error that could be enough

Instead of same topic, you can also insert it into another failedX Kafka topic (and have topic processed by cron like scheduled task).

And if you need things like progressive backing off before attempting reprocessing - you liekly want to push failed items into something else.

While it could be another tasks system/setup where you can specify how many reprocessing attempts to make, how much time to wait before next attempt ...etc. Often it's enough to have a simple DB/table.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: