Position: Backend
Category: Java
English level: upper
Years of experience: 1


Refactored old codebase into TS using TypeScript to reduce complexity while providing a better flexibility and code reuse.
Analyzed and recommended changes for the existing code, frameworks, and applications
Assisted business and technical team members in the evaluation of technical stack
Refactored implemented authorization to be used in micro-services with more roles
Implemented code convention, configured Git hooks to enforce them
Developed/created a testable business layer logic with dependency injection
Refactored API endpoints for mobile application
Implemented Stripe API with Payment service
Create REST API and CRUD endpoints (AWS Lambda, API Gateway)
For the data persistence I used (AWS DynamoDB)
For the uploading pictures, and saving files created Lambda function, upload the picture to a S3
The service use an authorizer Lambda function, and all it does is authorizing users using a Json Web token after that is implemented.
Scheduled event triggers (AWS EventBridge) and for checking service creation status used Cloud stack management (AWS CloudFormation)
Notification service have message queue (AWS SQS MailQueue) those messages picked up by sendMail Lambda function and email will be send using AWS SES service
Creating IAM Policies for S3 Bucket, DynamoDB tables, SQS service and CloudWatch logs
Created events for AWS Gateway HTTP endpoint (Rest API) which triggers Lambda function
Created middlewares which sets up picture URL into DB, upload picture to S3 and common middlewares