I'm a Full Stack Software Engineer with experience in developing quality Web Applications with high availability. Modern technologies excite me and I always strive to be up to speed with current trends. I like simple, clean and reusable code that is properly tested and documented.
I'm passionate about both Software and Cooking, so follow along my recipe for a Great App.
Every Great App needs a good foundation. It has to be robust, scalable and wellrounded. I've used:
- Java (always the latest lts version π₯)
- Spring/Spring Boot π
- Kafka π
- SQL (preferably PostgreSQL π)
- NoSQL (Redis and MongoDB π)
- TypeScript/NodeJS/NextJS
An aesthetic, intuitive UI is a must. My experience is with:
- JavaScript/TypeScript π‘
- React, Redux π―
- HTML(5) π¨
- CSS/SASS/LESS π
Testing is something I take very seriously. I've spent many hours with:
- JUnit (Unit testing)
- Mockito/PowerMockito (Unit testing)
- Jest (Unit testing)
- MochaJS (Unit testing)
- Locust (Load/Stress testing)
- JMeter (Load/Stress testing)
- Cypress and Selenium (End to End and Component testing)
And of course, Sanity and Smoke tests should be performed for every new release. Health checks are also nice β .
Building everything together consistently is a must. You won't hear the famous It runs on my PC anymore if you use:
- Maven
- Webpack
- Jenkins
- GoCD
- Docker
- Kubernetes
- Helm
Once everything is ready, serve it to the users with:
- Vercel
- AWS
- Tomcat
- WebPack
- Nginx
- Traefik
- HAProxy
What if something does go wrong? Having good logs and monitoring can be crucial. My experience lies with:
- SLF4J
- Kibana
- Logstash
- Datadog
- CloudWatch
- Java Management Extensions (JMX)