Live data from Hacker News

Today’s Top Tech Skills

hiringlab.org

291–300 of 373 posts

Re: Today’s Top Tech Skills

#291
post #256

Earlier quoted context omitted.

Lol. Are you new to technology or something?

If you keep breaking the site guidelines, we're going to have to ban you. https://news.ycombinator.com/newsguidelines.html

You know what? Fuck it. Ban me. If you really think the above comment is egregious, fuck you. Dumb motherfucker.

Re: Today’s Top Tech Skills

#292

In the recent two or so years I was surprised to see how many people don't _really_ know about SQL. Sure they can write a simple insert and update query and maybe a join, assuming they can just ignore that there actually are different types of joins. But if you ask them about other _still fundamental_ knowledge like a _rough_ idea about what the different transaction isolation level are/mean/imply for you, they fail…

> which make it in practice harder to access the database for anything but trivial queries. I did my time. I understand normalization. I've got a vague understanding of the various normal forms (except 6NF which nobody seems to understand ;-) I can use a query profiler and I've occasionally read up on the different index types and their performance profiles. But I still prefer to use an ORM. SQL syntax just never fit…

(Actually - just read up my Codd again - I think it's 5NF that always had me stumped)

Re: Today’s Top Tech Skills

#293
post #281
post #227

Earlier quoted context omitted.

Tech "hubs" like the Bay Area are rare: most software developers earn far less, and our salaries shouldn't be taken for a typical salary. The vast majority of software developers will never see six figures (adjusted for inflation) unless they move to management, just like most of their white-collar peers.

https://h1bdata.info/topjobs.php Software engineer and senior software engineer are 100k+, among many others.

The average wealth of ten penniless homeless people and Bill Gates is in the billions.

Re: Today’s Top Tech Skills

#294
post #268

Earlier quoted context omitted.

I think you might be conflating good general software engineering practices with language choice. Remember that the current dominant social network of our time (Instagram) built and scaled just fine off of Django + Postgres and a relatively small engineering team -- you can write poor code in Python just like you can in Java, and you can write good code in either one.

Ouch, those are the arguments people usually bring forward to defend PHP – strange to hear them applied to Python. While I agree that good software engineering practices makes the real difference, it's not the only thing that matters. There are better languages and worse languages. While you can apply good practices and successfully build good stuff using a language designed in 10 days (or a language that evolved acc…

Well, are you trying to say that PHP is impossible to use properly? It's not exactly the first tool I'd look for, but it's clearly possible to use at scale if we look at what Facebook did with it.

I have to completely disagree with you. There is no such thing as better or worse languages in a vacuum. Languages exist in an ecosystem that you use to build things using them. Most best practices you apply as a software engineer are reasonably language agnostic. On the other hand, tooling, libraries, frameworks -- many of these things cannot easily ported over from one language to another, and moreover have taken many billions of dollars or man hours of effort from many people before us to get to where they are.

For what it's worth, you don't really make any arguments as to what makes a language better or worse, and you don't really make any arguments that "those practices will have to work a lot harder than they would if you had used a better language" -- for whom? I have worked with hundreds of talented engineers in my life building codebases that have lasted the test of time and I have never once ran into one who had difficulty making a quality codebase using whatever language they ran into.

Blaming a language for poor code is a crutch, and drawing a correlation between code quality and language is dubious. Which more likely has an outsize effect on codebase quality, that the organization that wrote the code, or the language itself? I'll go for humans as the weak link every time.

Re: Today’s Top Tech Skills

#295
post #14

It remains weird and disturbing to me that "AWS" is treated as a skill. Not "cloud system management", but " AWS ". Edit: I do understand why it can be lucrative to have expertise with a specific cloud provider. It's just the status quo of these services being their own unique silos that disturbs me: I would personally be wary of making "ability to effectively use Amazon's servers" a pillar of my career.

I am a mechanical engineer. Mechanical engineering jobs ask for SolidWorks/AutoCAD/CATIA/Creo/etc experience, not just computer-aided design; ANSYS/ABAQUS/NASTRAN/etc expertise, not just finite element method; Fluent/CFX/OpenFOAM/etc knowledge, not just computational fluid dynamics. With the exception of OpenFOAM, all of these software are proprietary, largely non-interoperable, and expensive—like thousands to tens o…

“ I can never imagine opening my independent consultancy business because how expensive the basic tools are kind of expensive.”

I’m in the same boat as an EE, however some of these tool vendors will cut you a break as a consultant. The same PCB tool I pay $10k/seat at work I bought for $5k at home.

Re: Today’s Top Tech Skills

#296
post #49
post #9

I have to wonder if Java would be in demand if not for Android?

Here are some companies that run much, if not most, of their backend on Java: Amazon, Apple, Google, Netflix and Twitter, not to mention pretty much every government, military, bank, hospital, airport, and utility company.

I thought Google was mostly C++, with Java being at best second to C++.

Re: Today’s Top Tech Skills

#297
post #14

It remains weird and disturbing to me that "AWS" is treated as a skill. Not "cloud system management", but " AWS ". Edit: I do understand why it can be lucrative to have expertise with a specific cloud provider. It's just the status quo of these services being their own unique silos that disturbs me: I would personally be wary of making "ability to effectively use Amazon's servers" a pillar of my career.

"AWS" seems like a much more useful delineation over "cloud system management" than "Java" does over "Programming" I could be super wrong but I'd expect a Java programmer to become useful on a C# project faster than I'd expect an AWS person to become useful building out other cloud infrastructure.

> I could be super wrong but I'd expect a Java programmer to become useful on a C# project faster than I'd expect an AWS person to become useful building out other cloud infrastructure.

I think that is indeed wrong. The major clouds are all pretty similar in terms of the commodity IaaS services - VMs, disks, networks, load balancers etc., right up to things like managed Kubernetes clusters (AWS EKS, Google GKS, etc.) The basic correspondence between those various components is obvious, and the underlying infrastructure is the same - you still end up with servers with disks and TCP network access running whatever OS you chose. The situation gets even less different if you use something like Kubernetes, since your interaction with clusters largely relies on Kubernetes tooling instead of the cloud provider's.

Someone very familiar with AWS should easily be able to find corresponding services in e.g. Google Cloud - I know because I just went through that, having years of AWS experience as a software developer and architect, and now contracting with a company that uses Gcloud. There are differences, but prior knowledge of what to expect tends to make it easy to find what you need.

The only real exception is when you get to proprietary SaaS products, like AWS DynamoDB or Google BigQuery. But these are managed services which require virtually zero maintenance, so it's really the software developers who have to deal with those differences.

The problem with switching from something like Java to C# is that, even aside from the language syntax and semantics differences, which one can pick up fairly quickly, there's a huge ecosystem of libraries and tools that all changes, and the details matter much more - what collection of classes/functions/methods does a library have, what are their names, what do they do, which ones are better than which other ones, etc.

The time to get up to speed on all that is going to be greater no matter what, just because of the sheer volume of detail involved. Not that a Java programmer couldn't get up to basic speed on C# relatively quickly, but to reach expertise with it and not have to consult docs for many little things, i.e. to get efficient and effective at it, takes much longer. I've done that too - I spent nearly two years at a company that used C#, and can't consider myself an expert at all, unlike with Java.

Re: Today’s Top Tech Skills

#298
post #269

Java is still undisputed in the enterprise. Node.js was a contender but lost steam. May be .net once it becomes truly platform neutral have a chance to take on Java. Until then most probably it will remain widely popular.

I was hoping Kotlin might challenge Java outside Android but it seems unlikely to make a dent in Java's dominance of enterprise computing.

Personally as a JVM dev, I see no reason to choose kotlin over Java unless I'm stuck in an environment thats running a JVM < 8.

Re: Today’s Top Tech Skills

#299

Java is still undisputed in the enterprise. Node.js was a contender but lost steam. May be .net once it becomes truly platform neutral have a chance to take on Java. Until then most probably it will remain widely popular.

To me node never was a contender. The lack of types is painful in JS. Then out of the box nodejs just dies by default on error. Without tons of package and tooling around it. It is a horrible application server.

Re: Today’s Top Tech Skills

#300
post #121

Earlier quoted context omitted.

Most people don't know Java as well as they think they do.

Do they need that though? Will they be paid for that expert Java knowledge?

What kind of question is this? Expert engineers will be paid for that knowledge in any language. Tons of complex, high performance, and high scale applications are written in Java. Half of FAANG runs on Java. Contrary to what HN thinks the world doesn't only run on python, go, and rust.
Post reply on HN