Modern Software Engineering Skills

I got my master's degree in computer science in 1993. It is very important to keep learning. This is a list of current software engineering skills that I am working on.

Modern Programming Languages:
While you might be proficient in several languages, staying updated on popular ones like Python, JavaScript, or Java is crucial. These are widely used in industry.

Cloud Computing:
Understanding platforms like AWS, Azure, or GCP is essential. Many applications are now cloud-based.

DevOps:
This involves collaboration between development and operations teams. Knowing tools like Git, Docker, and Kubernetes is valuable.

Continuous Integration and Continuous Delivery (CI/CD):
This is a practice to automate building, testing, and deployment. Understanding tools like Jenkins, GitLab CI/CD, or CircleCI is beneficial.

Software Testing:
Writing effective unit, integration, and end-to-end tests is crucial for software quality.

Agile Methodologies:
Understanding Agile frameworks like Scrum or Kanban can help you work effectively in modern development teams.

Data Structures and Algorithms:
A strong foundation in these is always valuable, regardless of the language or technology.

Modern Programming Languages
Python:
Google's Python Class: href=https://developers.google.com/edu/python/
The Python Tutorial: https://docs.python.org/3/tutorial/
Exercism: https://exercism.org/
JavaScript:
MDN Web Docs: https://developer.mozilla.org/en-US/docs/Web/JavaScript   
FreeCodeCamp: https://www.freecodecamp.org/
The Odin Project: https://theodinproject.com/
Java:
Oracle's Java Tutorials: https://docs.oracle.com/javase/tutorial/
The Java Tutorials: https://docs.oracle.com/javase/tutorial/
Java Programming Masterclass: https://www.udemy.com/course/java-the-complete-java-developer-course/
Cloud Computing
AWS, Azure, GCP:
AWS Documentation: []
Azure Documentation: https://docs.microsoft.com/en-us/azure/
GCP Documentation: https://cloud.google.com/docs/
Free Tier: Check the respective websites for details.
DevOps
Git:

Pro Git book: https://git-scm.com/book/en/v2
Interactive Git tutorials: Many online platforms offer these.
Docker:

Docker Documentation: https://docs.docker.com/
Docker Labs: []
Kubernetes:

Kubernetes Documentation: https://kubernetes.io/docs/
Kubernetes Tutorials: Many online platforms offer these.
Continuous Integration and Continuous Delivery (CI/CD)
Jenkins:

Jenkins Documentation: https://www.jenkins.io/doc/
Jenkins Tutorials: Many online platforms offer these.
GitLab CI/CD:

GitLab Documentation: https://docs.gitlab.com/ee/ci/
GitLab Tutorials: Many online platforms offer these.
CircleCI:

CircleCI Documentation: https://circleci.com/docs/
CircleCI Learn: []
Software Testing
Selenium:

Selenium Documentation: https://www.selenium.dev/documentation/
Selenium Tutorials: Many online platforms offer these.
JUnit/TestNG:

JUnit: https://junit.org/junit5/
TestNG: []
Online Tutorials: Many online platforms offer these.
Agile Methodologies
Agile Alliance: https://www.agilealliance.org/
Scrum Guides: https://scrumguides.org/
Kanban Guide: []
Data Structures and Algorithms
GeeksforGeeks: https://www.geeksforgeeks.org/
LeetCode: https://leetcode.com/
HackerRank: https://www.hackerrank.com/
Additional Tips:

Practice regularly: Coding challenges and projects help solidify your knowledge.
Join online communities: Engage with other developers to learn and share.
Build projects: Apply your knowledge to create real-world applications.
Stay curious: The tech world is constantly evolving, so keep learning new things.