Below are the list of top 10 tools I use on a daily basis in my job
- Configuration management tool
Configuration management tool – Ansible takes up 80% to 90% of my daily life. All servers provisioning, software installation and management are automated using it. Automation with configuration management tool allows repetition on multiple servers and avoids human error.
2. Jenkins
All software compilation, build and deploys are automated on Jenkins. Includes, writing Jenkins pipeline, installing, upgrading Jenkins and its plugins.
3. AWS
This is where all the servers and resources are. EC2, DNS and other services like Elastic Search etc.
4. Terraform
This is used in to provision the services and resources in AWS. I view it as the configuration management tool of AWS that allows repetition and eliminates human error.
5. Elastic Search
This is where all the logs go to. Maintenance work such as automating snapshot, backup and curator clean up are part of the job.
6. Operating system
System administrating work on operating systems like Ubuntu. Diagnosing, troubleshooting issues, installing and upgrading packages.
7. Nginx
Load balancing for applications and services.
8. Docker
Containerization has become important these days due to cost savings, therefore most servers are shifted towards being provisioned in Docker.
9. Monitoring tools
Integrating monitoring software into the applications, services and databases using services such as New Relic, AppDynamics and Datadog.
10. Hashicorp Vault
Used to store all secrets and sensitive information of applications.