Development tools and technologies I use in my professional work

As a Technical Lead with extensive experience in full-stack development, here's a comprehensive list of the tools and technologies I regularly use to build and maintain enterprise-scale applications.

Development Environment

  • favorite

    IntelliJ IDEA

    Simply the best Java IDE I've ever used. While it might seem heavyweight to some, its Spring Boot integration and debugging capabilities have saved me countless hours. The database tools and Kafka integration are just icing on the cake.

    productivityjava
  • essential

    VS Code

    My go-to editor for anything not Java. The speed and extension ecosystem are unmatched. I particularly love how it handles TypeScript and Angular projects. Plus, its Git integration is just perfect for quick changes.

    productivityfrontend
  • Docker & Docker Swarm

    Docker changed my whole approach to development environments. I've fallen in love with how it simplifies setting up complex microservices locally. Swarm has been a game-changer for managing our test environments - it's simpler than Kubernetes for our needs.

    devopscontainers

Backend Technology Stack

  • favorite

    Spring Boot & Java 23

    My go-to stack for backend development. Spring Boot’s opinionated approach aligns perfectly with my workflow, allowing rapid development with minimal configuration. Java 23 introduces enhanced pattern matching, virtual threads (Project Loom), and better garbage collection, significantly boosting scalability and performance. The improvements over Java 17 are evident, especially in handling high-throughput environments with reduced latency.

    backendjava
  • Apache Kafka

    Initially skeptical about its complexity, but now I'm a convert. It's become my favorite solution for handling high-volume event streams. The reliability and scalability are impressive, though there was definitely a learning curve with exactly-once semantics.

    messagingstreaming
  • Keycloak

    After trying various auth solutions, Keycloak won me over with its flexibility. Setting up OAuth2 and OpenID Connect flows is surprisingly straightforward, and the admin console is actually pleasant to use. It's been rock-solid for our identity management needs.

    securityauth
  • learning

    Rust

    My top choice for high-performance, memory-safe backend development. Rust’s ownership model eliminates entire classes of bugs, making it ideal for building reliable systems. With Rust 2024, improvements like async closures, enhanced trait system, and more ergonomic async programming make development smoother.

    backendrust

Monitoring & Observability

  • ELK Stack

    Elasticsearch, Logstash, and Kibana have become indispensable for our logging needs. Kibana's visualization capabilities have helped us spot patterns we would have missed otherwise. Though setting up the perfect index patterns took some trial and error.

    monitoringlogging
  • favorite

    Grafana & Prometheus

    The dynamic duo of our monitoring setup. Grafana's dashboards are both beautiful and functional. Prometheus's pull model initially seemed strange but has proven more reliable than push-based systems I've used before. PromQL took some getting used to though!

    monitoringmetrics

Frontend Development

  • essential

    React

    My go-to library for building modern web interfaces. I particularly love React's component-based architecture and the incredible ecosystem. The new hooks API has made state management so much cleaner, and the virtual DOM's performance is exceptional. Combined with Next.js, it's become my preferred choice for building performant, SEO-friendly applications.

    frontendjavascript
  • essential

    Angular

    My preferred framework for enterprise applications. The opinionated structure and TypeScript integration make it perfect for large teams. The CLI is a massive productivity booster, and I'm particularly fond of the dependency injection system. It's especially powerful for complex business applications.

    frontendtypescript
  • TypeScript

    Can't imagine doing large-scale JavaScript development without it anymore. The type safety has caught countless potential bugs before they hit production. The IDE integration with VS Code is just fantastic. Essential for both React and Angular projects.

    javascripttyping
  • favorite

    Tailwind CSS

    A game-changer for my styling workflow. The utility-first approach initially seemed verbose, but now I can't go back. It makes responsive design a breeze and keeps my CSS bundle size in check. Perfect for both React and Angular projects when combined with appropriate configurations.

    cssstyling

Team Collaboration

  • Jira & Confluence

    While not the most exciting tools, they're incredibly effective for keeping large teams organized. Jira's customizable workflows have helped us maintain a smooth development process, and Confluence has become our single source of truth for documentation.

    managementdocumentation
  • essential

    Git & SonarQube

    Git is Git - it just works. But combining it with SonarQube has elevated our code quality significantly. The automated code reviews catch issues I might miss, though I had to tune some rules to avoid false positives.

    version-controlquality