If you are a Cloud engineer or possess a similar technical Cloud related role, you need to ensure that you can automate your daily tasks and better manage your workload. This post serves as a compilation of a software toolkit which I regard to include the most frequently used and most useful software applications in the day-to-day activities of a Cloud engineer.
Software toolkit for cloud engineers
Standard productivity tools
The following tools are standard productivity tools and can be used by any IT professional or more broadly by any professional who is spending a considerable amount of time in an office job.
- Email client. Examples include Outlook 365 and other SMTP and IMAP-based clients, such as Protonmail and Tutanota. ProtonMail was founded in 2013 by scientists who met at CERN and were drawn together by a shared vision of a more secure and private Internet. Since then, ProtonMail has evolved into a global effort to protect civil liberties and build a more secure Internet, with team members also hailing from Caltech, Harvard, ETH Zurich and many other research institutions.
- Unified communications (UC) client. Examples include Microsoft Teams, Zoom, Webex, Google Meet and Discord.
- File sharing client. Examples include Microsoft 365 Sharepoint Online and Onedrive for Business, Citrix Files as well as Pcloud and Mega.
- VoIP client (soft phone). Examples include Zoiper and 3CX. You can also utilize your favorite UC client for Enterprise Voice features, for example the Teams Microsoft Phone System.
- Password manager. Examples include Lastpass, Nordpass, Teampass and Passbolt.
- Authentication token manager. Examples include the Microsoft Authenticator, Google Authenticator and Twilio Authy.
- Screenshot manager. Examples in Windows include the native Snipping tool and the steps recorder tool (C:\Windows\System32\psr.exe). Examples in Linux include ksnip.
- Video recording software. Examples in Windows include OBS, Camtasia, Prezi, Techsmith Capture. Steps recorder in Windows. OBS is also available in Linux.
- Hardware to be used for voice and video recording. This includes, but is not limited to, green screen, high fidelity microphone systems (both desktop and portable wireless microphone), lighting system, sound insulation system, web camera and high definition camera as well as a lightboard.
Cloud engineering tools
The following tools cover more specialized tasks which are usually undertaken by Coud engineers, Cloud architects and various other Cloud-related technical job roles.
- Remote host connection manager. This application should act as remote connectivity manager and should support all mainstream remote connection protocols, including but not limited to, RDP, SSH and VNC. Examples in Windows include MRemoteNG, Microsoft Remote Desktop Manager and Devolution Remote Desktop Manager. Examples in Linux include Remmina and Thincast Remote.
- Microsoft Visual Studio Code and Microsoft Visual Studio.
- Diagramming software, including Microsoft Visio and Draw.io.
- Command line interface (CLI). Examples in Windows include the Windows Terminal. Examples in Linux include various native shell (Bash) terminals.
- Powershell interface. Examples in Windows are the Powershell core and the Powershell desktop versions. In Linux, only the Powershell core version is supported.
- API management tools and SDKs. Examples in Windows include Postman, Windows SDKs and Azure SDKs. A list of available Windows SDKs can be found at: https://stefanos.cloud/blog/windows-10-kits-and-tools/.
- Packet sniffing application. The leading tool here is Wireshark, which is available in both Windows and Linux.
- Host monitoring manager. The best example in Windows is the Windows Admin Center. More details about the Windows Admin Center can be found at https://stefanos.cloud/blog/windows-admin-center/. Examples in Linux include Canonical Landscape and Netplan (for network management automation). For more details on management tools and consoles available in Windows, you can refer to my Amazon book.
- IaC tools, such as Powershell DSC, Azure Powershell, Azure ARM templates, Azure Bicep templates, Terraform, Chef, Puppet and Ansible.
- VPN connection manager. There can be multiple VPN connections, either Point to Site (P2S) or Site to Site (S2S). Each connection can utilize a different VPN protocol, including IPSec-based protocols as well as SSL VPN based architectures. Examples in Windows include OpenVPN, Cisco AnyConnect and any other VPN hardware or software appliance provided by the respective VPN vendor . Examples in Linux include OpenVPN.
- Remote technical support tools. Examples in Windows and Linux include Teamviewer and Anydesk.
- Backup and recovery tools for files, databases, virtual machines and containers. Some good examples for Windows can be found in the following article: https://stefanos.cloud/kb/how-to-automate-azure-mysql-database-backups/.
- Management tools and clients for connections to public clouds. Review my relevant article on Azure management tools and Microsoft 365, which presents all Azure specific management tools.
- Hypervisor and container management tools. Examples in Windows include management tools for Hyper-V, VMWare VSphere, Citrix Hypervisor, Proxmox and Nutanix. Examples in Linux include Ubuntu LXC, KVM, Cloudstack, Docker, Kubernetes and OVirt.
- Programming language frameworks, including the .NET framework, Python framework. It all depends on your programming language flavor. There are a few fairly new languages which have become very popular, such as AngularJS, NodeJS and Go.
- Disassemblers, compilers and assembler tools for troubleshooting and reverse engineering. The most noteworthy example is that of IDA disassembler.
- Security tools, penetration testing and forensics tools. Review my introductory post on computer security to gain a better understanding of the components involved.
- Hardware monitoring and troubleshooting tools.
- Source code version control and devops tools. Usually these tools are Web-based and are combined with public cloud services, so they are platform independent. Great examples are the Github, Gitlab and Gitbook tools.
- Troubleshooting tools. Examples in Windows include the SysInternals tools.
- Helge Klein tools for profile management and permissions management.
- Nirsoft free system utilities for Windows.
- Canonical tools for Linux.
- Patch management tools, including PatchMyPC and Windows Update.
Recommended Web browser plugins
- Firefox developer tools by hitting the F12 key.
- Firefox internal about: commands. Type about:about in the Firefox URL field and hit enter to get all the available options as shown below. The about:config command more specifically allows you to configure various hidden Firefox options.
- Telerik Fiddler for Web debugging.
- Firefox Sync
- Save as HTML or PDF
- RSS reader
- Bookmarks manager such as a Pocket
- Password manager
- Script blocker
- Ad blocker
- VPN proxy client
The above list is not exhaustive and mainly reflects my personal view of what constitutes an essential software toolkit for cloud engineers .