Profile
Hi! My name is Diego. I am a Software Engineer, currently pursuing a master’s degree in software and security engineering at Texas Tech University, set to graduate in December 2023. I have been developing software applications for more than 6 years. I am proficient with programming languages such as JavaScript, TypeScript, Java, C#, and Python. The main frameworks/libraries I work with include but are not limited to React, Next.js, Node.js, Express.js, Nest.js, Spring Boot and ASP.NET Core. I love coding and I frequently post new projects in GitHub to keep myself sharp and updated with the current tech trends.
I have studied culinary arts at Le Cordon Bleu University, and English Language Teaching at Británico institute. After working for a couple of years, I realized my true passion was one of my childhood hobbies: developing games and web applications. I started studying Software Engineering at Universidad Peruana de Ciencias Aplicadas with a deep passion for developing computer programs that later transformed into a career in Full-Stack Web Development. I was fortunate to learn from brilliant professors, connect with inspiring peers, and make long lasting relationships that have developed the skills that define me today.
Currently, I am working on software applications using Clean Architecture, TDD and Serverless Computing to deliver highly maintainable, loosely coupled, self-contained, and testable modules, as well as highly available services. I have learned the craft of Software Development by being involved in the entire SDLC process, which has allowed me to understand the need for good architecture from the inception of a project, and how to apply SOLID principles to achieve it. In addition, I have developed a keen interest in Cloud Computing and Multi-Cloud Architecture, and I am currently investing a significant amount of time researching the best ways to maximize its potential.
With a somewhat unconventional background, I understand the challenges of transitioning into a tech career, but I also understand how involved individuals like me are in this career when making such transition. My long-term goal is to inspire people from diverse backgrounds in the realm of Software Engineering and to contribute to knowledge sharing in Test-Driven Development (TDD), Clean Architecture, and Cloud Computing. Coffeeless Programming is my endeavor to help spread the word around about these topics.
Education
Mar 2022 – Dec 2023 Texas Tech University (TTU)
Mar 2016 – Dec 2020 Universidad Peruana de Ciencias Aplicadas (UPC)
Mar 2011 – Jul 2016 Universidad Le Cordon Bleu (ULCB)
Work experience
Amazon (Payments Storage Service): May 2023 - Aug 2023
Software Dev Engineer Intern
- Led the design and development of a new API to streamline server connectivity checks via SFTP and HTTP protocols, reducing client processing time from minutes to seconds and replacing manual procedures.
- Expedited intern project completion within a month, overcoming bureaucratic challenges that delayed deployment.
- Leveraged IAM Policy documents to allow-list IAM Roles to call the newly created API, preventing all non-authorized calls.
- Elevated unit test branch coverage by up to 5% across multiple services, ensuring robustness and reliability using Mockito and JUnit.
- Utilized CloudFormation for infrastructure creation such as API Gateway resources, AWS Lambdas, and Lambda policies.
- Collaborated with SDE III engineers to establish external API behavior documentation for the newly created API.
Tech stack: AWS S3, AWS Lambda, Continuous Integration (CI), Continuous Delivery (CD), Amazon ECS, Amazon Dynamodb, REST APIs, API Development, Pipelines, Java
Conkiusoft: Jul 2021 – Dec 2021
Backend Developer
- Worked remotely with a software developer crew and company based in Argentina to develop enterprise web applications.
- Developed software modules using creational and structural design patterns and object-oriented programming in NodeJS serverless projects following SOLID principles improving code reusability and maintainability.
- Engineered time-efficient APIs by employing promises and ES6 features, focusing on performance optimization.
- Configured Auth0 to create API permissions and scopes, effectively securing critical endpoints from unauthorized access.
- Led the creation of a data export feature using Excel.js, simplifying the process of exporting vital partner business data.
- Deployed serverless APIs to testing and production environments using Bitbucket Pipelines and the Serverless Framework reducing manual intervention by leveraging IaC service.
- Automated project versioning leveraging Git tagging and Gulp.js tasks for every deployment on UAT and production environments, enhancing traceability.
Tech stack: Nodejs, Typeorm, AWS Lambdas, Serverless Framework, Angular, AWS RDS, AWS S3, MySQL
UPC: May 2021 – Nov 2021
Independent Project workshop consultant
- Developed mobile and web applications for capstone projects using technologies and deployed them to AWS cloud hosting.
- Guided Systems Engineering students through their capstone projects core milestones.
- Designed software architecture diagrams using C4 model according to application specifications.
- Elevated presentation performance for System Engineers' capstone projects by delivering actionable insights, targeted recommendations, and creating mock presentation questions. Resulted in demonstrable improvements in presentation quality and final grades.
Tech stack: React, React Native, NodeJS, Express, ASP.NET Core, Svelte, Vue.js, MySQL, SQLServer, Lambdas, EC2, AWS Lex, API Gateway, S3
Sonr Digital: Jan 2020 – May 2021
Software Developer
- Reduced query response time by 60% in API endpoints that retrieved business reports by leveraging JavaScript ES6 features, such as Promises, to resolve non-dependent database queries in parallel.
- Designed and integrated payment gateway adapters to accommodate multiple API providers, adhering to the dependency inversion principle for better maintainability.
- Incorporated pessimistic concurrency control mechanisms to safeguard product availability for end users.
- Implemented system modules using object-oriented programming, improving legibility and reusability.
- Minimized memory leaks in Node.js applications, leveraging node inspector and Chrome Developer Tools for diagnostics.
- Refactored legacy React Native application to meet the marketplace requirements and desired quality attributes.
- Worked with a group of senior developers to enable Scotiabank Fair, temporary online marketplace, driving tens of thousands of soles in revenue for partner suppliers.
- Designed a dynamic and interactive UI in Angular, empowering clients to analyze crucial sales metrics, make data-driven decisions, and optimize their marketing strategies.
- Revamped and maintained an ASP.NET Core API for Sodexo, enhancing the Merchie mobile app with new features and improving the customer experience.
Tech stack: React, React native, Angular, Node.js, Nest.js, AWS EC2, AWS S3, MongoDB, Mongoose
VCA Consulting & Solutions: Jan 2019 – Apr 2019
Software Developer Intern
- Worked with the product owner to gather the functional requirements from stakeholders.
- Refactored legacy codebase in C#, creating new modules as requested by the product owner.
- Designed user interfaces in accordance with the needs of the stakeholders.
- Created, maintained, and refactored store procedures for enterprise reports in MySQL database management system.
Tech stack: ASP.NET (Server side rendered apps), SQL Server, Azure, Bootstrap, jQuery, HTML, CSS
Technical Skills
Programming languages: TypeScript, JavaScript, C#, Java, C++, Go, Python, R.
DBMS: MongoDB, MySQL, Sql Server, Postgres.
Frontend: Nextjs, React, Vue, Angular.
Web frameworks: Express, Nestjs, ASP.NET, Spring Boot
Architectural Patterns: MVC, Onion, Clean architecture.
IDE: Spring tool suite, IntelliJ, Visual Studio, VS Code, Android Studio.
Testing libraries: Jest, Testing Library, JUnit, Mockito
Design Patterns: Composite, Decorator, Adapter, Builder, Factory, CQRS, Mediator, Proxy, Singleton
CI/CD Tools: Jenkins, Gitlab, Travis CI, Bitbucket pipelines, GitHub actions
Others: Linux Administration, DevOps, Agile, Jira, Bitbucket, GraphQL, Rest, Serverless. Micro frontends, Webpack, Gulp, Redux, MobX, Git, Docker, Kubernetes.
Language skills
Fluent Spanish, Fluent English & Basic French.
Hobbies and interests
- Reading about new trends and new technologies in the web development field
- Learning new skills as needed for personal projects
- Cooking
- Playing tennis
- Going to the Gym