James Deville, Software Developer in Ventura, United States
James Deville

Software Developer in Ventura, United States

Member since May 26, 2022
James is a principal engineer with over 15 years of experience in multiple technical and leadership roles. He is at home developing in Ruby, JavaScript, TypeScript, Elixir, and Go and can also provide technical guidance on architecture and systems design. James loves to learn new technologies and codebases and would be happy to help with different projects.
James is now available for hire

Portfolio

  • Procore
    Apache Kafka, Docker, Ruby, Ruby on Rails (RoR), Go, TypeScript, Kubernetes...
  • Procore
    Elixir, PostgreSQL, Ruby, Ruby on Rails (RoR), Amazon DynamoDB, Apache Kafka...
  • Malwarebytes
    Amazon Simple Queue Service (SQS), AWS Simple Notification Service (AWS SNS)...

Experience

Location

Ventura, United States

Availability

Part-time

Preferred Environment

Visual Studio Code, OS X, Linux, Windows, Vim Text Editor, Slack, Zoom, Discord

The most amazing...

...project I've been a part of as the SDET of IronRuby at Microsoft was working on open source in an otherwise closed source world.

Employment

  • Principal Software Engineer

    2021 - PRESENT
    Procore
    • Acted as a technical leader of Procore’s new observability team.
    • Led discussions about team formation related to charter, vision, and process guidance.
    • Developed a long-term company vision for observability, including infrastructure changes, vendor relations, and tooling.
    • Interfaced with vendors for support, feature, and recommended practice development.
    • Participated in negotiations of contracts with tooling vendors.
    • Mentored a team and guided the development of an OpenTelemetry-based observability pipeline.
    • Mentored a team in multiple languages, including Go, Ruby, and TypeScript, to develop tooling and libraries.
    • Supported team efforts to own Helm and Terraform modules for managing the observability infrastructure.
    Technologies: Apache Kafka, Docker, Ruby, Ruby on Rails (RoR), Go, TypeScript, Kubernetes, Amazon EC2, OpenTelemetry, StatsD, Sumo Logic, Datadog, New Relic, Helm, Python, SQL, C#, Git, Observation, Redis, GitHub, Back-end, APIs, Remote Team Leadership, Remote Work, Team Leadership, Visual Studio Code, OS X, Linux, Vim Text Editor, Slack, Zoom, JavaScript, Node.js, Amazon Web Services (AWS), Terraform, REST, AWS Simple Notification Service (AWS SNS), Amazon Simple Queue Service (SQS), Amazon S3 (AWS S3), .NET, NestJS, Architecture, Agile, Web Architecture, Back-end Development
  • Staff Software Engineer

    2019 - 2021
    Procore
    • Worked on a small team pairing and mobbing to drive architectural changes to Procore’s webhook and WebSocket systems.
    • Designed and developed new Elixir-based APIs for change tracking.
    • Headed design discussions with stakeholders to ensure designs met requirements.
    • Advised and performed changes in Ruby on Rails codebase interacting with Elixir-based systems.
    • Guided team discussions and development around service creation and observability.
    • Mentored junior, mid and senior-level teammates in career growth discussions.
    • Mentored teammates in designing and developing a NestJS and TypeScript-based template application for company-wide use.
    Technologies: Elixir, PostgreSQL, Ruby, Ruby on Rails (RoR), Amazon DynamoDB, Apache Kafka, REST, NestJS, TypeScript, Kubernetes, Node.js, SQL, C#, Git, Redis, GitHub, Back-end, APIs, Remote Work, Team Leadership, Visual Studio Code, OS X, Linux, Vim Text Editor, Slack, Zoom, JavaScript, Go, Amazon Web Services (AWS), Docker, AWS Simple Notification Service (AWS SNS), Amazon Simple Queue Service (SQS), Amazon S3 (AWS S3), .NET, Amazon EC2, StatsD, Architecture, Agile, Web Architecture, REST APIs, Localization, Back-end Development
  • Senior Software Engineer

    2016 - 2019
    Malwarebytes
    • Acted as a technical lead on architectural and design decisions on the second version of our APIs using TypeScript, OAuth2, Node.js, AWS DynamoDB, and Amazon SQS.
    • Assigned work, developed stories, and guided technical direction for remote developers on projects.
    • Developed, designed, and maintained Malwarebytes Endpoint Protection and Incident Response back-end API server in Go, running on AWS ECS and using AWS SES, Amazon SQS, AWS S3, and AWS Kinesis.
    • Provided guidance and architectural input on associated React front-end and .NET-based endpoint agent.
    • Worked closely with the SRE and DevOps to expand services and automate deployments on AWS and diagnose and correct scaling and performance issues.
    • Provided mentorship and guidance to coworkers and junior developers.
    Technologies: Amazon Simple Queue Service (SQS), AWS Simple Notification Service (AWS SNS), Amazon DynamoDB, Amazon S3 (AWS S3), Amazon Elastic Container Service (Amazon ECS), Go, TypeScript, React, PostgreSQL, OAuth 2, .NET, SQL, Git, GitHub, Back-end, APIs, Remote Team Leadership, Team Leadership, Visual Studio Code, OS X, Linux, Vim Text Editor, Slack, Zoom, JavaScript, Node.js, Amazon Web Services (AWS), Docker, Terraform, REST, NestJS, Amazon EC2, StatsD, Architecture, Agile, Front-end, Web Architecture, REST APIs, API Integration, Back-end Development
  • Senior Software Developer

    2015 - 2016
    Moz
    • Continued development and maintenance of the Open Site Explorer product.
    • Designed and developed a new Node.js-based export system for cross-product use.
    • Provided guidance and architectural input on new products.
    • Collaborated with the design and front-end teams to implement new features on new and existing products.
    Technologies: Node.js, Ruby on Rails (RoR), JavaScript, Ruby, SQL, HTML, CSS, Git, Redis, GitHub, Back-end, APIs, Remote Work, OS X, Linux, Vim Text Editor, Amazon Web Services (AWS), Docker, REST, Amazon EC2, Agile, Front-end, REST APIs, API Integration, Localization, Back-end Development, MySQL
  • Senior Software Developer

    2012 - 2015
    Eliassen Group | Rooster Park
    • Delivered feature development and architectural input for Moz’s Open Site Explorer product. Migrated Rails application to new API-based architecture. Worked with the existing team on refactoring, new features, and bug fixes in Ruby on Rails.
    • Delivered feature development and architectural input for WhitePages’ PRO Web lookup and API products. Designed and implemented new features for PRO Web lookup using Ruby on Rails. Improved existing deployment and development environments.
    • Developed new features for Ratify’s still confidential web portal using Ruby on Rails. Designed new JavaScript-driven web interfaces. Established and debugged deployment environments.
    • Provided mentorship to junior engineers and training in best practices.
    Technologies: Ruby, Ruby on Rails (RoR), JavaScript, SQL, HTML, CSS, Git, Redis, GitHub, Back-end, APIs, Remote Work, OS X, Linux, Vim Text Editor, REST, Agile, Front-end, REST APIs, API Integration, Localization, Back-end Development, MySQL
  • Software Developer

    2011 - 2012
    Urban Influence
    • Owned feature work and maintenance on Moz’s Open Site Explorer.
    • Rewrote the CSV export system using Ruby, Resque, and Redis to increase stability and visibility of running exports and migrated large data sets to the new system.
    • Modified deployment environments to match staging and production clusters.
    • Managed multiple large refactoring operations to increase test coverage, better separate code concerns, isolate dependencies, and decrease the risk of future changes.
    • Collaborated with designers to convert provided Photoshop files to HTML and CSS.
    • Worked with clients to ensure their requirements were understood and implemented correctly.
    • Implemented themes for FastSpring and Zendesk sites using JavaScript to modify the Document Object Model (DOM) and CSS to affect the styling.
    Technologies: Ruby, Ruby on Rails (RoR), JavaScript, SQL, HTML, CSS, Git, Redis, GitHub, Back-end, APIs, OS X, Linux, Vim Text Editor, REST, Agile, Front-end, REST APIs, API Integration, Localization, Back-end Development, MySQL
  • SDET

    2008 - 2011
    Microsoft
    • Wrote and implemented a test plan for .NET interoperability.
    • Drove the migration of IronRuby from Subversion (SVN) to Git on GitHub.
    • Designed and developed an automated system to synchronize Azure DevOps Server and Git.
    • Developed WiX scripts to package IronRuby as an MSI package, including a rake library to abstract this process.
    • Developed a test harness that combined multiple test runners into one command and result set.
    • Developed new tests in C# and Ruby to test various parts of the interpreter.
    • Collaborated with developers from other Ruby implementations to run RubySpec against IronRuby.
    • Integrated IronRuby tests with internal continuous integration tools to enable pre-check-in verification.
    • Participated in cross-team planning and code reviews.
    Technologies: C#, Ruby, C++, Dynamic Language Runtime (DLR), Git, GitHub, Back-end, Windows, Vim Text Editor, .NET, Agile, Localization

Experience

  • Malwarebytes Incident Response
    https://www.malwarebytes.com/business/incident-response

    I was part of the team building a Go-based API to manage endpoint scanning engines and provide the API for a React-based front end. This was written in Go on top of AWS with a PostgreSQL database. I helped plan the code structure, guided the project, interfaced with the product team, mentored developers on the front and back end, and grew to lead a team developing a new version of this API in TypeScript.

  • Observability Pipeline

    My current focus is building an observability pipeline and improving observability at Procore. This involves writing Helm and Terraform for an OpenTelemetry pipeline and navigating Go code to understand the implementation of OpenTelemetry. It also involves adding tracing, metrics, and logging code and abstractions to a 1M LOC Rails application and smaller JavaScript or TypeScript applications. There is a lot of mentoring, but I also oversee these projects' architecture and long-term path and regularly pair with the team to fix issues when they are slowed by a lack of experience with Rails and Node.js.

  • Events Pipeline

    My first project at Procore was working on a team of two managing a set of services written in Elixir that performed change-data-capture against the main database, translated those changes to webhook and WebSocket calls, and saved them to a PostgreSQL database for a REST API. These services handled millions of events an hour, wrote and consumed them from Kafka, and utilized Elixir's process model, Phoenix library, and Ecto to create an internal processing pipeline. One of the last major updates to that service was splitting the REST API into microservices back end by Dynamo to allow for a more horizontally scalable service.

Skills

  • Languages

    Ruby, JavaScript, TypeScript, Elixir, Go, SQL, HTML, CSS, C#, Python, PHP, C++
  • Frameworks

    Ruby on Rails (RoR), OAuth 2, NestJS, .NET
  • Libraries/APIs

    Node.js, REST APIs, React, Dynamic Language Runtime (DLR), Vue
  • Tools

    Vim Text Editor, Git, Slack, Zoom, Sumo Logic, GitHub, Terraform, Helm, AWS Simple Notification Service (AWS SNS), Amazon Simple Queue Service (SQS), Amazon Elastic Container Service (Amazon ECS)
  • Paradigms

    Web Architecture, Agile, REST
  • Platforms

    Docker, OS X, Linux, Windows, Amazon Web Services (AWS), New Relic, Visual Studio Code, Kubernetes, Apache Kafka, Amazon EC2
  • Other

    Back-end, APIs, Architecture, Back-end Development, Discord, Observation, OpenTelemetry, Team Leadership, Remote Work, Remote Team Leadership, API Integration, Localization, StatsD, Front-end
  • Storage

    PostgreSQL, Redis, Datadog, MySQL, Amazon DynamoDB, Amazon S3 (AWS S3)

To view more profiles

Join Toptal
Share it with others