Daniel Campos, API Design Developer in Vancouver, BC, Canada
Daniel Campos

API Design Developer in Vancouver, BC, Canada

Member since February 11, 2015
Daniel is a full-stack software engineer with extensive experience designing and implementing large-scale web-based applications using Java and JavaScript. Lately, he's been working mainly in a microservices architecture leveraging the power of the cloud—particularly the AWS environment. He is a driven individual, a team player, an enthusiastic learner, and, most importantly, a passionate professional.
Daniel is now available for hire

Portfolio

  • Tradier
    Amazon Web Services (AWS), Travis CI, WebFlux, Linux, Unix, GitHub, Git...
  • DevFactory
    Amazon Web Services (AWS), Linux, Docker, PostgreSQL, MySQL, CircleCI...
  • Tradier
    Amazon Web Services (AWS), RESTful Development, REST APIs, CDI, JAX-RS...

Experience

Location

Vancouver, BC, Canada

Availability

Part-time

Preferred Environment

Git, WebStorm, IntelliJ, MacOS

The most amazing...

...thing I've coded is an evolutionary algorithm called Grammatical Evolution to optimize the software effort estimation in the early phases of a project.

Employment

  • Senior Software Engineer

    2016 - PRESENT
    Tradier
    • Released two microservices to production handling 1.5k requests per minute.
    • Applied Java best practices to all modules with the help of tools such as FindBugs, Sonarqube, and Google Error Prone.
    Technologies: Amazon Web Services (AWS), Travis CI, WebFlux, Linux, Unix, GitHub, Git, Redis, MySQL, MongoDB, REST APIs, RESTful Development, Vert.x, Spring MVC, Spring Boot, Dropwizard, Java
  • Software Architect

    2015 - 2016
    DevFactory
    • Worked on a proprietary CI System entirely based on AWS services and microservices written in Java with the help of Spring Framework.
    • Worked on implementing and maintaining RESTful APIs using Spring Boot.
    • Worked on a product to provide insights over unit tests. This product was integrated with Travis CI.
    • Worked with several AWS services like SQS, SNS, Redshift, S3, EC2, EC2 Container, DynamoDB, RDS, and ELB.
    • Worked on a Java agent to intercept the compiler and identify modules in a project sending the artifacts (source, binary, lib) to AWS S3.
    • Dockerized a Python module with PostgreSQL leveraging the docker-compose utility.
    Technologies: Amazon Web Services (AWS), Linux, Docker, PostgreSQL, MySQL, CircleCI, Travis CI, Jenkins, Sonar, Gradle, Maven, Groovy, Python, RESTful Development, REST APIs, Spring MVC, Java 8
  • Senior Software Engineer

    2015 - 2015
    Tradier
    • Designed several RESTful APIs for financial products with a microservices thought process.
    • Applied several design patterns in favor of extensibility, reusability, maintainability, and readability to highly improve the code base.
    • Created reusable projects to avoid code duplication among several applications.
    • Worked on a streaming API project to deliver a large quantity of financial data.
    • Implemented front-end web applications with JavaScript frameworks.
    • Converted some Rails/Sinatra APIs to Java.
    Technologies: Amazon Web Services (AWS), RESTful Development, REST APIs, CDI, JAX-RS, Hibernate, Java EE, Docker, Sinatra, Ruby on Rails (RoR), Ruby, Microservices, Ratpack, Akka, Test-driven Development (TDD), Linux, Express.js, Node.js, Functional Programming, Memcached, MongoDB, Redis, MySQL, Ember.js, Dropwizard, JavaScript, Java
  • Senior Software Engineer and Team Leader

    2010 - 2015
    Algar Tech
    • Awarded Outstanding Employee 2014 - Software Development Unit.
    • Led the innovation team creating solutions to improve the company's productivity and quality.
    • Supported the adoption, in 2013, of a new reference architecture using front-end technologies like AngularJS together with Java EE back-end communicating through a RESTful API.
    • Implanted and spread a tool that helped the company to adopt Agile methodologies.
    • Created a reusable, cross-platform, and flexible UI library to increase the development process in the early stages.
    • Created an innovative requirements traceability tool to bind business to code allowing developers and managers to have a better understanding of the whole development process besides collecting statistical information to help future predictions.
    • Handled technical training and new hire interviews.
    Technologies: Microsoft SQL Server, Oracle PL/SQL, Oracle, Apache, WebLogic, WebSphere, WildFly, JBoss AS, Linux, Subversion (SVN), Git, Maven, CSS3, HTML5, jQuery, AngularJS, Node.js, JavaScript, JMS, JSP, Servlet, JAX-WS, JAX-RS, CDI, Enterprise Java Beans (EJB), Hibernate, JPA, JSF, Java EE, Java SE
  • Sun Campus Ambassador

    2009 - 2010
    Sun Microsystems
    • Spread and contributed to the open source Sun technologies, mainly Java, Glassfish, and NetBeans.
    • Gave speeches and training for many companies and universities.
    • Blogged about Sun's technologies.
    • Became a Minas Gerais Java User Group (MGJUG) coordinator.
    • Created training materials and speeches about SCJA and SCJP certifications.
    Technologies: NetBeans, Solaris, MySQL, GlassFish, Java EE, Java SE

Experience

  • Streaming API

    Exposes an API for streaming real-time market data, such as quotes, time, and sales and trade information. This project evolved from Node.js and Express.js to Java Ratpack, and the most recent version was built with Vert.x.

  • Market Data API

    Delivers market data. Endpoints include real-time and delayed market data, history, time sales, and streaming session endpoints. It integrates with a third-party SOAP API from where the market data is retrieved.

  • Advisor

    Front-end layer that communicates with several APIs allowing advisor users to perform financial operations.

    Technologies: JavaScript (ES6), Ember.js, Node.js, Bootstrap, Bower, Git, GitHub, Travis CI

  • Operations API

    A service responsible for opening and funding accounts and admin endpoints necessary to maintain customer data. Most operations require integration with third-party SOAP/REST APIs. The API is used internally and externally via an API gateway.

  • Blend Subs

    An open source project, still under development, to help language learners by mixing subtitles in two different languages. It's possible to choose a percentage of phrases of the target language the user wants to mix together with its native language.

    Technologies: MEAN stack, NPM, Bower, OpenSubtitles API

  • SISCOS

    An SLA system used by large call center companies. It became a product so it is possible to run on Windows or Linux servers. As for databases, it's possible to use Oracle, PostgreSQL or SQL Server. It has a High Availability mode using JBoss AS Clustering and Load Balancing through Apache(mod_jk). Its UI was improved using Bootstrap 3.

    Technologies: Java EE 6 (EJB, Hibernate, JAX-WS, JAX-RS (RESTEasy), CDI, JSF (RichFaces)), JUnit, JBoss Seam, Maven, Oracle, SQL Server, PostgreSQL, Bootstrap 3, Google Charts

  • DRE Gerencial

    A system to manage the execution of services exposed on a Websphere ESB in order to load data. The project was developed for the largest health insurance company in Brazil, Unimed.

    Technologies: AngularJS, Grunt, Karma, NPM, Bower, E2E tests, HTML5, Booststrap, Java EE (EJB, JAX-RS (Jersey), CDI), JUnit, Maven, JBoss AS

  • Software Effort Estimation: An Approach Using Grammatical Evolution

    A project developed as part of my master's thesis. It's an evolutionary algorithm (EA) called Grammatical Evolution (GE) that has inspiration on the creation of proteins as well as the natural selection. EA is a subfield of machine learning/computational intelligence. This algorithm was used to optimize the prediction of software effort estimation. The GE algorithm generates executable programs in any language, in this case, in Python. It used a well-known dataset called ISBSG to train and validate the model. Before running the algorithm, this dataset was cleaned by removing outliers and other statistical tests. This process was done using R.

    Technologies: Python 2.7 (Pandas, Numpy, Matplotlib), Spyder, R

  • Autocom

    A system to calculate the commission of authorized partners, individual sellers, and teams of the largest health insurance company in Brazil, Unimed.

    Technologies: AngularJS, Grunt, Karma, NPM, Bower, E2E tests, HTML5, Booststrap, Java EE (JPA, EJB, JAX-RS (Jersey), CDI), JUnit, Maven, JBoss AS, Oracle, Oracle PL/SQL

  • Programas Online

    A system to assist doctors and patients in order to anticipate possible diseases. This project was developed for the largest health insurance company in Brazil, Unimed.

    Technologies: AngularJS, Grunt, Karma, NPM, Bower, E2E tests, HTML5, Booststrap, Java EE (JPA, EJB, JAX-RS (Jersey), CDI), JUnit, Maven, JBoss AS, Oracle, Oracle PL/SQL

  • Questionários Online

    A system to create dynamic forms used by doctors in order to measure the risk level of a patient. This project is used by many systems though RESTful API as well as AngularJS directives. It was developed for the largest health insurance company in Brazil, Unimed.

    Technologies: AngularJS, Grunt, Karma, NPM, Bower, E2E tests, HTML5, Booststrap, Java EE (JPA, EJB, JAX-RS (Jersey), CDI), JUnit, Maven, JBoss AS, Oracle, Oracle PL/SQL

  • FISCAP

    A system to store and manage all the bidding announcements on the state of Minas Gerais, Brazil.

    Technologies: Java EE (JPA, EJB, JSF (PrimeFaces), JAX-WS), Spring Security, Maven, JUnit, Oracle, JBoss AS.

  • RID

    An innovative project to accelerate projects on the early stages by creating a reusable and flexible UI library based on Bootstrap.

    Technologies: Bootstrap, SASS, HTML5, CSS3, JavaScript/jQuery

  • RAST

    An innovative project recognized by the company as the best idea of 2012. This project attracted government funding to be expanded and to update its initial architecture. Summarizing, RAST is a requirements traceability tool that binds source code and business requirements so that it's possible to easily keep track of the development phase. It provides the completeness of use cases or user stories, impact analysis, automatic traceability matrix, project evolution, and more. RAST is able to trace business and source code written in any language.

    Technologies: Java EE (CDI, JSF (PrimeFaces)), Google Guava, JavaFX version

  • SIGESP

    A city hall project that allows citizens to register any events in their neighborhood like falling trees, holes on the street, and so on.

    Technologies: Java EE (EJB, JSF (RichFaces), CDI, Hibernate), JBoss Seam, JUnit, Maven, JBoss AS

Skills

  • Languages

    C#, JavaScript, Java, SQL, Python, Java SE, HTML5, CSS3, Ruby, Java 8, Groovy, Kotlin, R
  • Frameworks

    Angular, JUnit, JPA, Spring Boot, Spring MVC, AngularJS, Dropwizard, Jersey, Bootstrap 3+, Spring Security, Express.js, Google Guava, Vert.x, Ember.js, Cypress, JSF, Hibernate, JSP, Ruby on Rails (RoR), Sinatra, WebFlux, Akka, Truffle, Mockito
  • Libraries/APIs

    JAX-RS, JAX-WS, Jackson, Quartz, Ratpack, Node.js, Protobuf, Vuex, Vue, Retrofit 2, JMS, jQuery, REST APIs
  • Tools

    Gradle, Maven, Git, Travis CI, NPM, Bower, IntelliJ, Subversion (SVN), Apache Tomcat, Karma, Grunt, Amazon Virtual Private Cloud (VPC), AWS Simple Notification Service (AWS SNS), Amazon Simple Queue Service (SQS), Amazon ElastiCache, Amazon CloudFront CDN, AWS IAM, Servlet, WildFly, Apache, WebStorm, Sonar, Jenkins, CircleCI, GitHub, Gulp
  • Paradigms

    Scrum, Microservices, REST, Test-driven Development (TDD), Functional Programming, RESTful Development
  • Platforms

    Java EE, Amazon Web Services (AWS), Jakarta EE, Docker, Linux, Android, Joomla, Oracle, Amazon EC2, AWS Lambda, Solaris, NetBeans, WebSphere, MacOS, Unix, Blockchain, Meteor, JavaFX, Ethereum
  • Storage

    MongoDB, MySQL, Redis, Oracle PL/SQL, Memcached, JBoss AS, PostgreSQL, Amazon S3 (AWS S3), Microsoft SQL Server
  • Other

    API Design, Evolutionary Algorithms, Animation, Machine Learning, Chrome Extensions, DocumentDB, Document Management Systems (DMS), GlassFish, CDI, WebLogic, Bitcoin, Enterprise Java Beans (EJB), Artificial Intelligence (AI), Software Development, Web Development, Computer Science

Education

  • Master's Degree in Computational Intelligence
    2013 - 2015
    Centro Federal de Educação Tecnológica de Minas Gerais – CEFET-MG - Belo Horizonte
  • Bachelor's Degree in Computer Science
    2008 - 2012
    Centro Universitário de Belo Horizonte - UNI-BH - Belo Horizonte

Certifications

  • AWS Certified Cloud Practitioner
    APRIL 2019 - APRIL 2022
    AWS
  • AWS Certified Developer - Associate
    OCTOBER 2016 - OCTOBER 2019
    AWS
  • Oracle Certified Expert, Java EE 6 Enterprise JavaBeans Developer
    APRIL 2015 - PRESENT
    Oracle
  • Microsoft Specialist: Programming in HTML5 with JavaScript and CSS3
    APRIL 2013 - PRESENT
    Microsoft
  • Oracle Certified Expert, Java Platform, EE 6 Web Component Developer
    AUGUST 2012 - PRESENT
    Oracle
  • IBM Certified SOA Associate
    MAY 2012 - PRESENT
    IBM
  • Oracle Certified Professional, Java SE 6 Programmer
    JULY 2010 - PRESENT
    Oracle
  • Oracle Certified Associate, Java SE 6
    AUGUST 2009 - PRESENT
    Oracle

To view more profiles

Join Toptal
Share it with others