The bulk of your tests are unit tests at the bottom of the pyramid. As you move up the pyramid, your tests gets larger, but at the same time the number of tests (the width of your pyramid) gets smaller.
As a good first guess, Google often suggests a 70/20/10 split: 70% unit tests, 20% integration tests, and 10% end-to-end tests. The exact mix will be different for each team, but in general, it should retain that pyramid shape.
Title is provocative, but the sentiment of loading up on unit tests over end-to-end and integration tests sits well with myself. One of the key problems with integration and end-to-end tests is that they wind up being harder to debug when something goes wrong the exact place that things broke is hidden behind these multiple layers of code. Unit tests give you a key unit of code where, this changed and now it isn’t responding in the same way, look right there.