Giter Club home page Giter Club logo

express_sweater_weather's Introduction

Jeremy Bennett: Family Man, Fullstack Engineer, Musician, Outdoor Enthusiast

class Api::V1::JeremyBennett < ApiBaseController
  before_action :set_free_time
  
  def work
    profession = Developer.new(tools)
    render status: 200, json: FullStack.new(profession)
  end

  def music
    instruments = { decent: 'violin', learning: 'guitar' }
    render status: 206, json: Hobby.new(instruments)
  end

  def fun
    while free_time do
      activities = Fun.new(play)
    end
    render status: 418
  end
  
  def family
    super
  end

  private

    def tools
      params.require(:software_engineer).permit(
        :ruby,
        :rails,
        :elixir,
        :phoenix,
        :react,
        :docker
      )
    end

    def play
      params.require(:human).permit(:snow, :woods, :mountains, :plants)
    end
end

Linkedin: jeremy-bennett-jaxjafinpapau GitHub jaxjafinpapau

Professional Work

Weedmaps.com

Weedmaps Online Ordering

Weedmaps is a cannabis industry leader in e-commerce and I contributed to order management and customer relationship management in Elixir/Phoenix, embedded storefronts in Typescript/Next.js/Node, and flagship weedmaps.com site in Ruby on Rails and Typescript/React. Most of my work with this team focused on facilitating online ordering to include piping and maintaining necessary user and payment data for analytics, establishing payment integrations with industry payment solutions providers, building self service tools to maintain customer product data, and limiting order amounts for jurisdictional compliance laws.

RecruitMilitary

RecruitMilitary Homepage

RecruitMilitary is a job board and contingency recruiting firm that focuses on Veterans. I was a part of a small team that maintained of a mix of new and legacy Rails applications, challenged with containerization and dependency updates that contributed to the migration of applications from Linode to AWS and improved application security. My React contributions were mostly accessibility upgrades and improved automated accessibility scores from an average of 73% to 97%

Veritone

Contact/RIPA

California requires that law enforcement agencies collect data about perceived race, gender, and sexual orientation when officers engage with the public and action is taken against them. I was paired with a senior front end engineer on my team to produce an application that could streamline the collection of data from officers and leverage cognitive analysis of the collected data to produce insights for law enforcement and civilian leadership.

The front end is a React application that uses redux with thunks for state management and server interaction, material-ui for component development, and jest for testing.

The back end of the application is a Ruby on Rails API that I was tasked with building from the ground up. It uses docker-compose to build an rspec-powered test environment with 100% test coverage. This back end also connects Contact to AiWare, Veritone's 'operating system for AI' to highlight PII for redaction and visualize the collected data with Veritone Illuminate.

RIPA Form Flow

Translate

A React application that uses redux, sagas, and material-ui for use as a document translation tool. A user can upload any common document type such as .docx, .odt, .xlsx, .pdf, .txt, etc or enter free-form textual input to be translated to and from over 30 languages. I was given the app fresh out of prototyping from an offshore team and tasked with updating it for Veritone's new core back end. I also contribute to the machine learning powered translation engines which include a Python service for native document translations and a suite of Go engines for text translation.

Translate History Tab

Engines

In addition to my team's front end application suite and Veritone-RIPA, I've had the rewarding opportunity to build and contribute to several back end services which at Veritone are packaged as engines. Engines are docker containers, and are frequently multi-staged builds leveraging a variety technologies such as Alpine base images and open source libraries. Some engines take advantage of 3rd party images or partner API services, while others are written in house to use open source machine learning algorithms such as Yolo for object detection and Tesseract for optical character recognition. Engines are orchestrated by a Go application which I have made contributions to as well.

Cool Stats

(provided by anuraghazra)

express_sweater_weather's People

Contributors

jaxjafinpapau avatar

Watchers

 avatar

express_sweater_weather's Issues

Create User Account

Business/User Value: As user I want to send a post request with postman so that I can create an account

Acceptance Criteria

GIVEN a post request with a user email, password, and matching password confirmation

THEN the user is returned a randomly generated API key in JSON format along with a 201 status, resource successfully created.

User Login

Business/User Value: As user I want to send a post request with postman so that I can login to my already existing account

Acceptance Criteria

GIVEN a post request with a user email and correct password

THEN the user is returned a their assigned API key in JSON format along with a 200 status

SAD PATH: Incorrect credentials return a status 401.

Create a new express app

From the command line create a new express app and remove the unnecessary files/folders for an API only setup.

Create a user model

Create a user model that has the attributes:

email: string
password_digest/js equivalent
api_key

Deploy App to Heroku

Deploy the express app after creation to Heroku. Debug any production issues encountered from using a new framework.

Add Google Geocoding API call

Implemented with a service. Will call services only in endpoints that require that data, making this functional promise wasteland of hell somewhat object oriented and easy to follow.

Forecast for a Given City

Business/User Value: As user I want to send a GET request with postman so that I can retrieve a forecast for a city of my choosing that I pass in my parameters

Acceptance Criteria

GIVEN a GET request to the path /forecast with a city passed in parameters

THEN the user is returned an object with arrays of 8 hourly objects and 7 daily objects for the city passed in params as well as a 200 status.

Delete User Favorite

Business/User Value: As user I want to send a DELETE request with postman so that I can remove a previously favorited city for my account

Acceptance Criteria

GIVEN a DELETE request with a city and my assigned API key

THEN the user is returned a 204 status, resource successfully deleted.

SAD PATH if an incorrect or no API key is passed a 401 is returned.

User Favorites a City

Business/User Value: As user I want to send a post request with postman so that I can create a favorite city for myself

Acceptance Criteria

GIVEN a post request to the path /favorites with a city and my assigned API key

THEN the user is returned an object with the key/value pair: "message": "Denver, CO has been added to your favorites", as well as a 201 status, resource successfully created.

SAD PATH if an incorrect or no API key is passed a 401 is returned.

Create (POST) User Route

Create a user route in routes/users.js that takes in json of an email, password, and password confirmation that creates a User in the db.

List User Favorites

Business/User Value: As user I want to send a GET request with postman so that I can list my favorited cities.

Acceptance Criteria

GIVEN a GET request to the path /favorites with my assigned API key

THEN the user is returned an object with cities that I have favorited.

SAD PATH if an incorrect or no API key is passed a 401 is returned.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.