From 37ad46dc4a9da55eae9cf37fb5fd5795ce03a5fe Mon Sep 17 00:00:00 2001 From: mitchelljfs Date: Fri, 27 Jul 2018 03:11:26 -0700 Subject: [PATCH] Modified projects and experience containers to get data from json and iterively render the data --- src/containers/Experience/index.js | 69 +++++---------------- src/containers/Projects/index.js | 98 ++++-------------------------- src/data/jobs.json | 52 ++++++++++++++++ src/data/projects.json | 67 ++++++++++++++++++++ 4 files changed, 146 insertions(+), 140 deletions(-) create mode 100644 src/data/jobs.json create mode 100644 src/data/projects.json diff --git a/src/containers/Experience/index.js b/src/containers/Experience/index.js index 552b957..9248c08 100644 --- a/src/containers/Experience/index.js +++ b/src/containers/Experience/index.js @@ -1,67 +1,26 @@ // @flow -import React from "react" +import * as React from "react" import "./index.css" import Job from "../../components/Job" +import jobs from "../../data/jobs.json" + type Props = {} class Experience extends React.PureComponent { render() { - return ( -
- - - - - -
- ) + let jobComponents = jobs.map(job => ( + + )) + + return
{jobComponents}
} } diff --git a/src/containers/Projects/index.js b/src/containers/Projects/index.js index c6d897f..d4f1b28 100644 --- a/src/containers/Projects/index.js +++ b/src/containers/Projects/index.js @@ -5,96 +5,24 @@ import Project from "../../components/Project" import "./index.css" +import projects from "../../data/projects.json" + type Props = {} class Projects extends React.PureComponent { render() { - return ( -
- - My personal site has taken the form of a plain HTML site and a Ruby - app, but it currently takes the form of a React.js app. It was - developed using Eslint, Prettier and Flow. It is hosted in multiple - locations around the world, using AWS S3 and Cloudfront. It is also - continously deployed using Travis CI. - + let projectComponents = projects.map(project => ( + + {project.description} + + )) - - This package will become a fully featured AWS Lambda function router, - able to respond to HTTP, Schedule, Cognito, and SNS events. It will - also support middleware interfacing. So far it includes functionality - for API Gateway. Check out the GoDoc Reference to see how to - instantiate a router and create endpoints. - - - - destinate is a react-native, iOS (and Android) app. Its main objective - is to suggest places or activities to the user based on their past - choices. It utilizes a serverless backend, written in Go and hosted on - AWS API Gateway/Lambda. It is still under development, as a side - project of Arash Lari and I. - - - - A minimal, cross-platform, unix-like-system management program. This - program is designed to detect which programs are affiliated with the - unix-like system, whether it be Debian or macOS. There are various - shortcuts to common unix-like commands, such as update and upgrade - (for package managers), another is poweroff or reboot. - -
- ) + return
{projectComponents}
} } diff --git a/src/data/jobs.json b/src/data/jobs.json new file mode 100644 index 0000000..6d25a9f --- /dev/null +++ b/src/data/jobs.json @@ -0,0 +1,52 @@ +[ + { + "title": "Lead Backend Engineer", + "company": "Hypremium.", + "timeSpan": "May 2018 - Present", + "bullets": [ + "Architect all new backend microservices using Serverless, AWS API Gateway/Lambda/more, and Golang.", + "Lead backend development team in an Agile (scrumban) environment.", + "Monitor and maintain all stages of hosted microservices." + ] + }, + { + "title": "DevOps Engineer", + "company": "Hypremium.", + "timeSpan": "January 2018 - May 2018, 5 Months", + "bullets": [ + "Maintain & migrate Ruby on Rails API and backend application.", + "Oversee and assist with continuous integration for backend development." + ] + }, + { + "title": "Sales Associate", + "company": "J. Crew", + "timeSpan": "October 2015 - January 2017, 1 Year 5 Months", + "bullets": [ + "Knowing the products and what products best suit the customers' needs.", + "Helping the customer with any manner of purchase, exchange, or return." + ] + }, + { + "title": "Intern", + "company": "Zumasys", + "timeSpan": "June 2015 - August 2015, 3 Months", + "bullets": [ + "Main goal was to learn as much about the business and their technology as possible.", + "Management and organization of customer correspondence.", + "Auditing of server space.", + "Dispatching and filtering ticketing system and office computer assistance." + ] + }, + { + "title": "User Support Technician", + "company": "Point Loma Nazarene University, ITS Department", + "timeSpan": "January 2015 - May 2015, 5 Months", + "bullets": [ + "First in contact for email hotline, second in contact for phones.", + "Work with customers via email, phone, remote control, and in person.", + "Computer diagnosis, repair, and preparation for customer.", + "Special projects." + ] + } +] diff --git a/src/data/projects.json b/src/data/projects.json new file mode 100644 index 0000000..f14fe3d --- /dev/null +++ b/src/data/projects.json @@ -0,0 +1,67 @@ +[ + { + "title": "mjfs.us", + "repoUrl": "https://github.com/mitchelljfs/mjfs.us", + "badges": [ + { + "imgUrl": "https://travis-ci.org/mitchelljfs/mjfs.us.svg?branch=master", + "linkUrl": "https://travis-ci.org/mitchelljfs/mjfs.us", + "alt": "Build Status" + }, + { + "imgUrl": + "https://api.codeclimate.com/v1/badges/dc70437f1490980d8e8e/maintainability", + "linkUrl": + "https://codeclimate.com/github/mitchelljfs/mjfs.us/maintainability", + "alt": "Maintainability" + } + ], + "description": + "My personal site has taken the form of a plain HTML site and a Ruby app, but it currently takes the form of a React.js app. It was developed using Eslint, Prettier and Flow. It is hosted in multiple locations around the world, using AWS S3 and Cloudfront. It is also continously deployed using Travis CI." + }, + + { + "title": "lambdarouter", + "repoUrl": "https://github.com/mitchelljfs/lambdarouter", + "badges": [ + { + "imgUrl": + "https://travis-ci.org/mitchelljfs/lambdarouter.svg?branch=master", + "linkUrl": "https://travis-ci.org/mitchelljfs/lambdarouter", + "alt": "Build Status" + }, + { + "imgUrl": + "https://api.codeclimate.com/v1/badges/7270c6c4017b36d07360/test_coverage", + "linkUrl": + "https://codeclimate.com/github/mitchelljfs/lambdarouter/test_coverage", + "alt": "Code Coverage" + }, + { + "imgUrl": + "https://api.codeclimate.com/v1/badges/7270c6c4017b36d07360/maintainability", + "linkUrl": + "https://codeclimate.com/github/mitchelljfs/lambdarouter/maintainability", + "alt": "Maintainability" + } + ], + "description": + "This package will become a fully featured AWS Lambda function router, able to respond to HTTP, Schedule, Cognito, and SNS events. It will also support middleware interfacing. So far it includes functionality for API Gateway. Check out the GoDoc Reference to see how to instantiate a router and create endpoints." + }, + + { + "title": "destinate", + "repoUrl": "https://github.com/mitchelljfs/destinate", + "badges": [], + "description": + "destinate is a react-native, iOS (and Android) app. Its main objective is to suggest places or activities to the user based on their past choices. It utilizes a serverless backend, written in Go and hosted on AWS API Gateway/Lambda. It is still under development, as a side project of Arash Lari and I." + }, + + { + "title": "sys-mgmt", + "repoUrl": "https://github.com/mitchelljfs/sys-mgmt", + "badges": [], + "description": + "A minimal, cross-platform, unix-like-system management program. This program is designed to detect which programs are affiliated with the unix-like system, whether it be Debian or macOS. There are various shortcuts to common unix-like commands, such as update and upgrade (for package managers), another is poweroff or reboot." + } +]