Back to Home

My Coding Experience and Technology Stack

>
school-symbol-and-colors

Programming Languages

In 2020, I began my programming career. Java was the first programming language I used. I got a basic understanding of programming using Java. upon adoption of Java SE (standard Edition). I switched to Java Enterprise Edition (EE). In the meanwhile, Java JDBC (Java DataBase Connectivity) helped me understand MySQL. I switched to Java Hybernate, a Java ORM (Object Relational Mapping) framework, after learning Java EE.

Meanwhile, I learnt about the website building elements HTML 5, Sass with CSS3, and JavaScript (ECMAScript). With my JavaScript understanding, I learned JQuery and Typescript, which are better versions of JavaScript. Using the fundamentals of these programming languages, I proceeded to frontend frameworks Angular CLI and React.

Later in university, I learnt Python, which was quite useful while learning machine learning. Because it was a module in our department, I learned C++ for algorithm solving. As a result of my interest in web3.0 programming and smart contracts, I learned solidity.

Frameworks

I continued JavaSE and JavaEE until I achieved the Spring Boot Framework, Spring Cloud, Spring Data JPA, Spring Security, and Spring Boot Actuator. This is how I learned about backend functionality using Springboot.

Using the frontend fundamentals (HTML5, Sass, Typescript) I learned Angular CLI frontend framework. Then I gained basic idea how full stack framework works.

According to university projects I used React frontend framework, React Native and EXPO mobile application frameworks and NodeJS, Django and FastAPI backend fameworks

aws cloud-services

Cloud Technologies

I obtained exposure with Amazon Web Services while internship at WealthOS in Sri Lanka and working as an AWS backend developer on a project linked to a mobile application in the United States. I worked with AWS Lambda, AWS CloudWatch, S3, API Gateway, RDS, IAM, DynamoDB, CloudFormation, SQS, Cognito, SNS, EC2 and AWS SAM while there. I utilized AWS SAM (Serverless Application Model) to develop, deploy, and build my project repository in AWS because I worked with typescript NodeJS serverless backend.

I've been using Microsoft Azure services since I participated in the Microsoft Imagine Cup a few years ago. I used a few authentication and authorization services in the Google cloud platform, such as logging in with Google services, accessing Google Drive, Mail, and other services. To deploy my frontends, I utilized netlify and github actions. I used firebase and firestore to implement my email sender.

Other Technologies

I've used the following technologies in addition to those stated above:

  1. VCS - Git, GitHub, Bitbucket
  2. NoSQL - MongoDB, neo4J, Firestore
  3. DB Managing tools - MySQL Workbench and DBeaver
  4. C programming language
  5. Postman http client
  6. Jupiter Notebook, Google Colab, Kaggle
  7. JavaEE and Hybernate
  8. Java Tools - Ant, Maven, Gradle
  9. Web Security - JWT(JSON Web Token), auth0
  10. UI/UX - Figma, MaterialUI, Bootstrap, AdminLTE
  11. Report Designer - Jaspersoft Studio
  12. SQL based other DBs - PostgreSQL, SQLite
  13. Bash programming language, Linux and docker

other-tech
ide

IDEs (Integrated Development Environments)

I used NetBeans and IntelliJ IJEA IDEs when I first started studying full stack with java, spring boot, mysql, and angular cli. I made use of android studio since I used JavaFX mobile to develop android apps using the JavaFX library. Later, I entirely switched to Visual Studio Code for any programming language, technology, or framework because it contains an incredible range of libraries and works with any technology.