Pedro Marquez

Full-stack Software Developer

Full Stack developer, Java Architect and Certified Ethical Hacker.

  • 5+ years of experience in Java technologies (back-end),
  • 7+ years of experience in front-end technologies (JavaScript, CSS, HTML),
  • 2 years of experience in Application Security and Penetration Testing

Roles

Skills


Professional Experience

Personal Projects

Software Developer
2015 until Today

I like to learn new technologies and I'm constantly involved in learning and participate in hackathons. These are a few of the technologies I've tried outside my day job

  • Hackathon: Developed an application with Golang to retrieve pictures from a Raspberry Pi and send them to AWS Rekognition for facial recognition
  • Hackathon: Developed an Ionic application to consume a Serverless application. The mobile application consumed an AWS Lambda exposed through AWS API Gateway; and it provided a list of ratings for the latest movies in theaters
  • Created a blog about Serverless applications, hosted at Medium: https://medium.com/a-man-with-no-server. I'm building a Serverless application as an example, and documenting step by step in the blog
  • Built an Electron application, using Angular, to manage services hosted in a Docker Swarm cluster: https://github.com/pfernandom/electroswarm
  • Hackathon: Developed an Angular application to visualize relationships between people stored in a Neo4J database, and displaying the data through a D3 data graph

Magellan (at Accenture)

Senior Full-stack Developer
Dec, 2017 until Today

As a senior developer, I contribute to create PaaS based applications using microservices over an AWS infrastructure. I mentor and help my teammates to complete their user stories successfully and in time. Also, I collaborate with the Architects team to improve the design of our cloud-based infrastructure, implement proofs of concept, document research results, and solve problems which appear during day-to-day development.

  • Built an internal ReactJS application with Redux and Rxjs (including its REST API build in NodeJS with Restify) to execute and monitor build jobs in Jenkins
  • Implemented and maintained a cluster of WSO2 products (over AWS EC2 instances running CentOS) including API Manager, Identity Server and Data Analytics
  • Created Bash scripts to run as Cronjobs to synchronize configuration files with Rsync, and to guarantee the availability of servers running inside EC2 instances
  • Worked under an Agile methodology (Scrum), acting as backup Scrum Master
  • Troubleshooted infrastructure and networking issues on AWS services using EC2, Security Groups, ELB instances and Route 53
  • Troubleshooted AWS services like RDS and Elasticache
  • Maintained Spring Data repositories which connect to MySQL and MongoDB
  • Built microservices using RabbitMQ for asynchronous inter-service communication
  • Developed microservices using Spring Boot, Spring Cloud, Spring Data and Maven, which used Docker as a deployment unit
  • Troubleshooted CI/CD pipelines implemented with Jenkins, which build the microservices in each commit to Git (BitBucket), packaging them in Docker and deploy them to both Openshift and CloudFoundry on the same pipeline.
  • Created and maintained services in PaaS products like Openshift and CloudFoundry
  • Implemented Single-Sign-On clients for SAML 2.0 (with Spring Boot MVC) and OpenID Connect (with JavaScript)
  • Designed REST APIs implemented in Spring Boot and exposed them through the WSO2 API Manager
  • Implemented an implicit OAuth2 grant, using the WSO2 Identity Server and AngularJS
  • Trained and mentored other developers in best practices of software development, debugging and infrastructure implementation
  • Built a proof of concept using Docker Swarm to run Docker-packaged microservices

ACSSP/REACH (at Accenture)

Software Architect & Full-stack developer
Dec, 2014 until Dec 2016

As the software architect for ACSSP/REACH, I worked with the architects of the other H&PS SW products to implement new features and integrate with the other applications. I participated in the innovation initiative to bring new technologies to the product

  • Worked under an Agile methodology (Scrum), participating proactively during Sprint planning and retrospectives
  • Implemented best practices for building REST APIs to expose core functionality in the product. Also, implemented OAuth2 for the authorization of those REST services
  • Designed a project structure to help clients extend our product
  • Analyzed and implemented portal servers like Liferay and Websphere Portal Server
  • Analyzed and designed integration of new code modules with legacy code
  • Created Java Portlets using Maven, Spring Portlet MVC and AngularJS
  • Created a library of reusable Angular components, using Bootstrap, Sass, Grunt
  • Implemented unit tests for Angular modules using Karma and Jasmine
  • Trained developers on AngularJS development and UI best practices
  • Implemented a responsive UI theme using HTML5, CSS/Sass and Bootstrap and libraries like modernizr
  • Worked with client implementation teams to fix Angular-based Java Portlets with Material design, to help them achieve their delivery dates
  • Peer Reviewed software commits from other developers, before deploying on demo environments
  • Analyzed security reports coming from the testing team and designed solutions to remediate vulnerabilities
  • Implemented common design patterns like adapter, facade, decorator, builder and factory method
  • Worked with source control using both Git and SVN servers
  • Maintained Hibernate repositories to connect to Oracle Databases

APSP (at Accenture)

Java Developer
Nov, 2013 until Dec, 2014

As a Java Developer, I worked in the update of custom adapters. These adapters decoupled the integration of the application with 3rd party provided products like databases, reporting systems and BPM servers

  • Implemented new modules in a suite of regression tests to guarantee the adapters back-compatibility
  • Implemented unit tests using JUnit to increase code quality and coverage
  • Updated adapters for SQL databases like Oracle and MySQL, ECM servers like Oracle ECM, Business Intelligence servers like Pentaho and Oracle BI and BPM products like Oracle SOA
  • Troubleshooted Maven dependency issues
  • Worked with SVN for code versioning

Center of Excellence for Security (at Softtek)

Security Analyst
Sept, 2011 until Nov, 2013

As a Security Analyst, I performed security assessments manually and using automated tools. Also, provided training and guidance for developers on vulnerability remediation, threat modeling and secure coding

  • Performed Black, Grey and White box security testing for applications from multiple vendors
  • Performed automated static code analysis to detect vulnerabilities using HP Fortify and Burp scanner
  • Conducted multiple training sessions for software developers in the company to help them understand common vulnerabilities and how to fix them
  • Performed automated security tests using HP Fortify. Analyzed the results, removing false positives and adjusting the criticality based on the application context
  • Performed Thread Modeling analysis for clients to help them determine possible security risks in their applications and infrastructure

TDSI Consultoria

Web Developer
Sept, 2009 until Sept, 2011

As a Web Developer, I used JQuery, ExtJS and Lotus Domino to create web applications

  • Used JQuery to perform AJAX requests to backend services exposed by Lotus Domino
  • Created UI modules using HTML, CSS and JavaScript
  • Maintained a Lotus Domino database, to store client records
  • Implemented a proof of concept using Ruby on Rails to create a web application