Here are some of the courses I took and the skills I learned from them.
Learned and implemented various data structures and algorithms in Java, such as arrays, lists, stacks, queues, trees, graphs, sorting, searching, hashing, etc.
Applied software engineering principles and practices to develop a desktop application using JavaFX and Gradle. Used tools such as GitHub and IntelliJ IDEA for version control, testing, and continuous integration.
Studied the fundamentals of computer networks, such as TCP/IP protocols, socket programming, routing algorithms, network security, etc. Implemented a reliable data transfer protocol using Python.
Learned the concepts and mechanisms of operating systems, such as processes, threads, synchronization, memory management, file systems, etc. Wrote shell scripts and C programs to manipulate system calls and signals.
Explored the topics and techniques of information security, such as cryptography, authentication, access control, network security, web security, etc. Performed various security attacks and defenses using tools such as Wireshark, Burp Suite, Metasploit, etc.
Learned how to be an effective technical leader in a complex and dynamic business environment. Studied leadership and management theories, and developed soft skills such as self-awareness, emotional intelligence, empathy, and conflict management. Learned how to create psychologically safe teams. Participated in readings, presentations, guest speakers, discussions, and self-reflection exercises.