Sathursan Parangkunran

Comp Sci @ Laurier

Skills I’ve Learned as a Software Engineer

Becoming a software engineer isn’t just about learning one language—it’s about building a toolkit of technical and professional skills. Over time, I’ve gained experience with a wide range of programming languages, frameworks, and tools that shape how I build, collaborate, and solve problems.


Programming Languages

  • Java – Object-oriented programming, backend development, and algorithms.
  • Python – Scripting, automation, data analysis, and prototyping.
  • C++ – Performance-focused coding, problem-solving, and data structures.
  • C# – Application development within the .NET ecosystem.

Web Development

  • HTML & CSS – Structuring and styling responsive, accessible interfaces.
  • JavaScript – Powering interactive and dynamic web applications.
  • React – Building reusable UI components with a modern frontend approach.
  • Node.js – Developing scalable backend services in JavaScript.
  • TypeScript – Strongly typed JavaScript that improves reliability and maintainability.
  • MongoDB – NoSQL database for flexible, scalable data storage.

Tools & Platforms

  • GitHub – Version control, collaboration, and open-source contribution.
  • Microsoft Office – Documentation, reporting, and productivity tools.
  • JSON Web Tokens – Secure authentication and authorization for modern applications.

Web Server Deployment & Automation

  • Linux Server Setup – Configuring web servers on Linux.
  • Automated Deployment – Using scripts to git pull changes and automatically restart the server.

Beyond the Code

Software engineering is more than syntax. Through projects and teamwork, I’ve developed skills in:

  • Problem-Solving – Breaking down complex issues into manageable solutions.
  • Collaboration – Working with peers through version control, code reviews, and clear documentation.
  • Critical Thinking – Evaluating trade-offs between performance, scalability, and simplicity.
  • Adaptability – Staying current with new frameworks, tools, and industry trends.

Reflection

These skills form the foundation of my growth as a software engineer. Every project has been a chance to expand my knowledge—not just technically, but also in communication, collaboration, and creative problem-solving.

The journey is ongoing, and the ability to learn how to learn has become the most valuable skill of all.