Here are some tools and services I use for my daily work as a software engineer.
I am using macOS since a couple of years. In my opinion it has a good focus on user friendliness and a great selection of developer tools. Additionally it provides enough freedom to customize your operating system to your requirements.
My editor of choice. I use it for nearly everything. Before I switched to Visual Studio Code, my primary IDE was IntelliJ IDEA. Nowadays, I only use IntelliJ IDEA when I need to do some Java development.
It took me a while before I was familiar with Visual Studio Code but after hours of using it I can tell, that it is the perfect fit for web development.
There are very good extensions available for Docker and Kubernetes, which is a bonus point for Visual Studio Code. In general there are extensions for nearly everything. It is also highly customizable so that you can find a variety of themes.
If I could compare usage time, I think iTerm2 would have a top rank. I prefer iTerm2 over the built-in macOS terminal because I like its split pane feature combined with broadcast input (which is really useful when you're working on servers).
Occasionally I have to connect to a database to run some SQL queries.
My tool of choice is TablePlus. It has a solid user interface and supports many SQL and even NoSQL databases like PostgreSQL, Amazon Redshift, MySQL, MariaDB, Microsoft SQL Server, Cassandra DB, MongoDB, Snowflake, Redis, SQLite, Oracle, Cockroach and Vertica.
DigitalOcean is my number one cloud provider. I'm hosting all my private projects here and some of my employers production projects are hosted here too.
They've released some very useful features in the last couple of months, e.g. managed Kubernetes clusters or managed databases (however only PostgreSQL is supported at this moment).
DigitalOcean has several datacenters in Europe (Frankfurt, London and Amsterdam), Asia (Singapore and Bangalore) and North America (New York, San Francisco and Toronto).
Homebrew is always the first thing I install when I set up a new Mac. Homebrew is a package manager for macOS just like APT on Linux.
Why make things complicated? Docker for Mac is a full development platform for using Docker on macOS.
It also includes a local Kubernetes environment which can be activated by just a click. The Kubernetes server runs inside your local Docker instance and is a single-node cluster (which is appropriate for your local development machine).
APIs are everywhere! Postman is my default API client. It also offers useful development features like mock servers or debug utilities.
The Node Version Manager (nvm) is my favourite tool to manage multiple Node.js versions.
I also have a list of default packages which are installed every time I install a new Node.js version. You just need to add the package names to the file
jq is a handy tool to query JSON data (hence the name json query). There is also an online playground where you can test filters.
1Password is my number one choice when it comes to password management. They also offer a business subscription which enables shared vaults for your development teams. No more excuses when it comes to strong passwords 💪!
From time to time I also do frontend development. ColorSnapper 2 is helping me to choose colors. You have a history with all colors you've picked - so you won't forget a tone you've liked weeks ago.
I ❤️ to use emojis!
If you're using Slack, you might be aware of the emoji finder. You type colon whenever you want to use an emoji, then type its name and hit enter again.
By using Rocket, you get this experience everywhere in macOS. I think this is much more convenient than the macOS built-in emoji dialog.
You can use Rocket for free, but I strongly recommend to buy the $5 pro edition which brings you some additional features and you also support the independent developer behind Rocket (@_matthewpalmer).
I often try new technologies and switch stuff from time to time, but these are the things I primarily use (in no particular order): TypeScript, Java, Bash, Spring Boot, NestJS, React, Angular, GatsbyJS, Styled Components, Git, GitHub, Netlify, Prismic, Docker, Kubernetes, NGINX, Terraform, SaltStack.
If you like my content, you might want to follow me on Twitter?! @fullstack_to