I have been software developer since 2015 and have learned to use many different kinds of technologies along the way.
As a software developer I am expected to learn new skills and master existing ones as I keep growing.
Below is an up-to-date list of technologies I am comfortable using, divided into logical categories.
Frontend technologies are tools, frameworks and coding languages which are used to build the client side of the web page. Client side of a web page is the one that is run inside the browser and is visible for the end-user.
Client side includes the user interface which can be built using multiple different languages and tools like once I have listed below.
Hypertext Markup Language (HTML) is a language used for building the basic structure of a web page. This text as you see right now is part of the HTML code.
Cascading Style Sheets is a language that applies the visual styles for HTML elements. The size of this text is handled by CSS language.
REST refers to an architectural design where information is exposed between resources. REST is used for transferring data. This text was fetched from an API via REST before it was displayed here on the client.
JSON is an object notation syntax used for representing data. This text sits in a NoSQL database inside a JSON object.
Backend technologies refer to coding languages and frameworks which are invisible for a web page end-user and function in the background inside a web server. Backend technologies’ responsibilities include CRUD (Create, Read, Update, Delete) operations as well as server-side logic. This text was fetched from a backend web server by the client.
Java is an object-oriented programming language and a computing platform used for building multi-purpose applications and services with as little implementation dependencies as possible.
Databases are systems that organise and collect data.
NoSQL database is a collection data that is not strictly organised nor structured in any specific manner.
MySQL database is a relational collection of data that runs on a web server.
Structured Query Language is a query language which is used for accessing and modifying data within a relational database.
Infrastructure & networking
Infrastructure and networking work as enablers for all information technology operations. These include a wide range of hardwares and softwares as well as configurations.
Docker is a tool which makes it easier to create containerised applications.
Kubernates is an open-source system for managing containerised applications.
Jenkins is an automation server that aims to make it easier to build, test and deploy applications reliably.
Linux is an open-source operating system.
Load balancers distribute traffic between clients and web servers.
Domain Name System is a decentralised system for matching human readable addresses with network ip-addresses.
Google Cloud Platform
Google Cloud Platform (GCP) is a cloud computing provider that enables businesses and individuals to run software and hardware with Google’s services.
Other miscellaneous specialisations
Other important frameworks and tools needed for creating and managing software.
Search Engine Optimisation refers to the process of optimising and improving a web page for the search engines.
Google Analytics is a tool for tracking and measuring the usage and the metrics of a web page.
Git is a version control system that makes collaboration between teams and developers easier and more efficient.
DevOps is a methodology for running software focused projects with both management and software development included.
SAFe & Agile
Scaled Agile Framework (SAFe) refers to the process of implementing Agile practices on the organisation scale. Agile is a practice of building and delivering software systems in timed iterations.
By no means am I an expert in all of the listed technologies, tools and frameworks above. I only listed the ones which I am 100% comfortable using and practicing.
I do not regularly use all of the listed items and some might even require extra practice to get a hang of them again. Then again, some of these items I could consider myself somewhat of an expert already.