0% found this document useful (0 votes)
36 views

Talk About Youself: Name Address Zip Code Birthday Education

Resume

Uploaded by

alex
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
0% found this document useful (0 votes)
36 views

Talk About Youself: Name Address Zip Code Birthday Education

Resume

Uploaded by

alex
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
You are on page 1/ 12

Name: Michael Jin Parker

Address: 1700 Old River Trail, Chuluota, Florida, US


Zip Code: 32766
Birthday: 7th, Nov, 1989
Education
FLORIDA GULF COAST UNIVERSITY – 2010 - 2015
FORT MYERS, FL
Computer Science, Software Engineering, Software System Design.

FLATIRON SCHOOL – 2015 - 2016


NEW YORK, NY
Computer Science, Object-Oriented Design, React, UI/UX

Talk about Youself


I’m a software engineer with over 7 years of experience managing all aspects of the development process
for small to medium-sized companies after the graduation of university.
My current jobs are at Athletic Junction LLC and Majestykapps Company, where I am working as a CTO
at AthleticJunction LLC, full stack software engineer at Majestykapps as contract.
At athletic Junction LLC, I built a full structure of platforms from cradle to grave as a lead developer like
DB Architecture and Model design, Resftful API Gateway, Stripe/Paypal Payment integration, Video
conference and live streamming integrations by using Agora.IO
At Majestykapps, I am working as a frontend developer mainly, managing several project’s frontend part
by using the trend frontend frameworks like React.js and Vue.js.
Nowadays I am looking for another opportunity because my contract at Majestykapps will end soon this
month, at the same time, athleticJunction Company I am working as CTO but part time now, because
platform MVP version are already done and it needs some raise funding.
I'd love this position as <Senior Full Stack Developer> because I know I have the skills to manage
complicated projects and I'd like to do that for your company.
Project Description
EVENTSSMARTER 2019 – PRESENT
https://www.eventssmarter.com
FLORIDA, UNITED STATES
EventsSmarter Platform is Events/Ticket management system for the every day person hosting
events or for large media and entertainment companies.

Responsibilities:
Built a full structure of platform from cradle to grave as a lead developer like DB Architecture and Model design, API
Gateway, Stripe/Paypal Payment, video conference platform integrations.

Laravel, Vue, Mysql, Stripe/Paypal SDK, Agora SDK, Nginx, AWS S3, SES, RDS, EC2, CloudFlare

ATHLETICJUNCTIONEVENTS 2019 – PRESENT


https://www.athleticjunctionevents.com
FLORIDA, UNITED STATES
AJE Platform is Events/Ticket management system for the school events, sports.

Responsibilities:
Built a full structure of platform from cradle to grave as a lead developer like DB Architecture and Model design, API
Gateway, Stripe/Paypal Payment, video conference platform integrations.

Laravel, Vue, Mysql, Stripe/Paypal SDK, Agora SDK, Nginx, AWS S3, SES, RDS

QUICKTUTOR 2018 JAN – 2020 AUG


https://quicktutor.com
MICHIGAN, UNITED STATES
QuickTutor is the first platform that connects anyone who wants to learn to the people who can
teach them, in real-time.
With QuickTutor, anyone can learn anything with the tap of a button or earn money sharing their
knowledge and experiences.

Responsibilities:
Built landing site, mobile application’s backend by using Firebase functions, hosting, Backend stripe payment
integration, twilio video call integration.

React.js, Firebase hosting/Functions/RealTimeDB/Firestore, Twilio, Stripe SDK


JUS LAW 2021 SEP – PRESENT
https://app.dev.jus-law.com https://www.juslaw.com
NY, UNITED STATES
A legal practice management system for lawyers, paralegals and law firms who want an end-to-end solution that is easy
to use and enhances their practice.

Responsibilities:
Contributing as a frontend developer on web platform (UI/UX improvement, Stripe Payment integration, VideoCall
Feature)

React.js, Django, Swift, Kotlin


FITSHARE 2021 SEP – PRESENT
https://fitshare.app
FL, UNITED STATES
Fitness Mobile Application for trainers.

Responsibilities:
Contributed as a backend developer and built by using Ruby on Rails

Ruby on Rails, Firebase, AWS S3


What are you looking for in your next position?
Three things that I'm looking for in my next job are a collaborative, team-focused culture, opportunities to
learn and grow my skills from a technical standpoint, and a chance to learn more leadership skills over
time.

What are the Success Factors for Successive Integration?


1. Maintain a code repository
2. Automate the build
3. Make the build self-testing
4. Everyone commits to the baseline every day
5. Every commit (to baseline) should be built
6. Try to keep the build fast
7. Test in a clone of the production environment
8. Make it easy to get the latest deliverables
9. Automate deployment

Explain DevOps?
DevOps is a newly emerging term in the IT field, which is nothing but a practice that emphasizes
the collaboration and communication of both software developers and other information
technology (IT) professionals. It focuses on delivering software products faster and lowering the
failure rate of releases.

What is the Difference Between “Git Pull” and “Git


Fetch”?
In the simplest terms, git pull does a git fetch followed by a git merge.

 When you use pull, Git gets the message to automatically do your work for you. It is
context-sensitive, so Git will merge any pulled commits into the branch you are currently
working in. pull automatically merges them without giving you any chance to
review it first. If you don’t manage your branches with a keen eye, you may be face to
face with many problems.
 When you fetch, Git gathers any commits from the target branch that do not exist in
your current branch and stores them in your local repository. However, it does not
merge them with your current branch. This is particularly useful if you need to keep
your repository up to date, but are working on something that might break if you update
your files. To integrate the commits into your master branch, you use merge.

What is Callback Hell?


The asynchronous function requires callbacks as a return parameter. When multiple
asynchronous functions are chained together then a callback hell situation comes up.

What is CORS?
CORS, abbreviation for Cross-Origin Resource Sharing, is a process used to gain the authority
of different web resources on different domains.
With the help of CORS, the integration of web scripts can be implemented more freely with the
external content of the original domain.

What is Multi-Threading?
The process of improving the performance of the CPU is known as Multi-Threading. Usually, it is seen as
the ability of a program to be managed by multiple users at a single time.
It is done by the execution of multiple processes that are supported by the operating system.

What is Continuous Integration?


Continuous Integration is the process of implementation of codes that are specially designed & automated
for testing. During the time of production, it helps the developers to apply the codes simply. Web
developers prefer this process for the integration of codes many times a day. Continuous Integration helps
in detecting errors quickly and locating them more easily.

What are the Advantages and Disadvantages of Using


“use strict“?
“use strict” is a statement that is used to enable strict mode to entire scripts or individual functions.
Strict mode is a way to opt in to a restricted variant of JavaScript.
Advantages-
- It makes it impossible to create global variables by mistake.
- Makes assignments that would otherwise silently fail to throw an exception.
- Makes attempts to delete undeletable properties throw (where before the attempt would
simply have no effect).
- It is mandatory that the function parameter name should be unique.
- this is undefined in the global context.
- It catches some common coding bloopers, throwing exceptions.
- It stops the functioning of features that are confusing.

Disadvantages-
- A lot of features that most of the developers might be used to are absent.
- No more access to function.caller and function.arguments.
- The concatenation of scripts written in different strict modes might cause issues.
What do you think of AMD vs CommonJS?
Both are ways to implement a module system, which was not natively present in JavaScript until ES2015
came along. CommonJS is synchronous while AMD (Asynchronous Module Definition) is obviously
asynchronous.
CommonJS is designed with back-end development in mind while AMD, with its support for
asynchronous loading of modules, is more intended for browsers.
In my opinion, most would find AMD syntax to be quite dull and CommonJS is closer to the style you
would write import statements in other languages. Most of the time, I find AMD unnecessary, because if
you served all your JavaScript into one concatenated bundle file, you wouldn’t benefit from the async
loading properties.
Also, CommonJS syntax is closer to the Node style of writing modules and there is less context-switching
overhead when switching between client-side and server-side JavaScript development.
I’m glad that with ES2015 modules, that have support for both synchronous and asynchronous loading,
we can finally just stick to one approach. Although it hasn’t been fully rolled out in browsers and in
Node, we can always use transpilers to convert our code.

Explain Prototype Inheritance in Javascript?


Ans – In a language implementing classical inheritance like Java, C#, or C++ you start by creating a
class–a blueprint for your objects – and then you can create new objects from that class or you can extend
the class, defining a new class that augments the original class.
In JavaScript you first create an object (there is no concept of class), then you can augment your own
object or create new objects from it.
Every object in Javascript has a prototype. JavaScript’s inheritance system is based on prototypes, and
not class-based. When a message reaches an object, JavaScript will make an attempt to find a property in
that object first. If it cannot find it, then the message will be sent directly to the object’s prototype, and so
on. That behavior called prototype chain or in many places, prototype inheritance.
Constructor functions are the most preferred way in JavaScript when it comes to constructing
prototype chains. When we use new, JavaScript injects an implicit reference to the new object being
created in the form of this keyword. It also returns this reference completely at the end of the function.

function Foo() {
this.kind = ‘foo’
}

var foo = new Foo();


foo.kind //=> ‘foo’
When should you not use arrow functions in ES6? Name
three or more cases.
Arrow functions should NOT be used:
- When we want function hoisting – as arrow functions are anonymous.
- When we want to use this/argument in a function – as arrow functions do not have
this/argument of their own, they depend upon their outer context.
- When we want to use named function – arrow functions are anonymous.
- When we want to use the function as a constructor – as arrow functions do not have
their own this.
- When we want to add function as a property in object literal and use an object in it – as
we can not access this (which should be the object itself).

What is Pair-Programming?
Pair Programming is one of the core elements of extreme programming in which two developers are
required to work on the same terminal.
The one developer whose task is to write the code is called the “Driver” and the other who is responsible
for reviewing the codes is called the “Navigator”.

What is Long Polling?


Ans – Long Polling is a pattern in web development that is used to improve pushing data from the server
to the client. By using a Long Polling pattern, the Client requests information from the server.
If the server does not have any information about the client, the server holds the request and waits for
some information to be available instead of sending an empty resource.

Explain a use case for Docker?


Docker is a low overhead way to run virtual machines on your local box or in the cloud. Although they’re
not strictly distinct machines, they give you many of those benefits.
Docker can encapsulate legacy applications, allowing you to deploy them to servers that might not
otherwise be easy to set up with older packages & software versions.
Docker can be used to build test boxes, during your deploy process to facilitate continuous integration
testing.
Docker can be used to provision boxes in the cloud, and with the swarm, you can orchestrate clusters too.

What are the latest trends in Full Stack Web


Development?
The rise of Vue JS Functional, real-time web apps, progressive apps, and mobile web development.
Programming benefits from JavaScript improvements. The emergence of more compatible extensions.
Explain the difference between REST and GraphQL
The main and most important difference between REST and GraphQL is that GraphQL does not deal with
dedicated resources. Instead, everything is considered as a graph and therefore is connected and can be
queried to app exact needs.

What is Event Loop?


Ans – Node.js is a single-threaded application but it supports concurrency via the concept of event and
callbacks. As every API of Node js is asynchronous and is a single thread, it uses async function calls to
maintain the concurrency. Node uses an observer pattern.
Node thread keeps an event loop and whenever any task gets completed, it fires the corresponding event
which signals the event listener function to get executed.

Explain the purpose of clearing floats in CSS.


The clear CSS property specifies whether an element can be next to floating elements that precede it or
must be moved down (cleared) below them.
Clearing floats (or clear fixing) basically force the containing element to expand to contain its child
elements. Thus, it forces the subsequent elements to appear below it.

How can you share code between files?


This depends on the JavaScript environment.
On the client (browser environment), as long as the variables/functions are declared in the global scope
(window), all scripts can refer to them. Alternatively, adopt the Asynchronous Module Definition (AMD)
via RequireJS for a more modular approach.
On the server (Node.js), the common way has been to use CommonJS. Each file is treated as a module
and it can export variables and functions by attaching them to the module.exports object.
ES2015 defines a module syntax that aims to replace both AMD and CommonJS. This will eventually be
supported in both browser and Node environments.

What is Temporal Dead Zone in ES6?


In ES6 let and const are hoisted (like var, class and function), but there is a period
between entering scope and being declared where they cannot be accessed. This period is
the temporal dead zone (TDZ).
//console.log(aLet) // would throw ReferenceError

let aLet;
console.log(aLet); // undefined
aLet = 10;
console.log(aLet); // 10

In this example, the TDZ ends when aLet is declared, rather than assigned.

What is the difference between a blue/green deployment


and a rolling deployment?
- In Blue/Green Deployment, you have TWO complete environments. The Blue
environment is the one that is running and the Green environment is the one to which
you want to upgrade. Once you swap the environment from blue to green, the traffic is
directed to your new green environment. You can delete or save your old blue
environment for backup until the green environment is stable.
- In Rolling Deployment, you have only ONE complete environment. The code is
deployed in the subset of instances of the same environment and moves to another
subset after completion.

What are the disadvantages of GraphQL?


Disadvantages of GraphQL are:
- You need to learn how to set up GraphQL. The ecosystem is still rapidly evolving so you
have to keep up.
- You need to send the queries from the client, you can just send strings but if you want
more comfort and caching you’ll use a client library -> extra code in your client
- You need to define the schema beforehand => extra work before you get results
- You need to have a GraphQL endpoint on your server => new libraries that you don’t
know yet
- Graphql queries are more bytes than simply going to a REST endpoint
- The server needs to do more processing to parse the query and verify the parameters

What is the most loved language of a full stack


developer and why?
I have rich experience of HTML/CSS/SCSS/JS for frontend, PHP, Django, Node.js for backend.
The most loved language is PHP.

What is an event loop in Node.js?


In general, an event loop is a mechanism that expects and dispatches events or messages in a program. In
Node.js, event loops are central flow constructs.
For example, whenever a request needs to be processed, it is inserted into the event loop and processed as
soon as it is ready to be processed.
Rather than doing it alone, the node delegates responsibility for managing the system. Because of this
behavior, Node does not actively wait for this task to complete and can process other requests in the
meantime.

What is Docker?
Docker is an easy way to run virtual machines on your local machine or in the cloud. While they are not
strictly separate machines and do not require an operating system to boot, they offer many of these
benefits.
Docker can encapsulate legacy applications, allowing them to be deployed to servers that would
otherwise not be easy to configure with older software packages and versions.
Docker can be used to create test blocks during deployment to facilitate ongoing integration testing.
Docker can be used to provision boxes in the cloud, and with the swarm, you can also manage clusters.

What is a RESTful API?


The term REST represents Representational State Transfer.
It is a compositional style that is utilized to make Web Services. It utilizes HTTP solicitations to access
and utilize the information. We can make, update, read, and erase information.
An API (Application Program Interface) for a site is the code that permits two programming projects to
speak with one another. It permits us to compose mentioning administrations from a working framework
or other application.
Ruby

What is Ruby on Rails?


Ruby on Rails is an open-source, web-application framework. Built within the Ruby programming
language, it helps people create various applications.

What do subdirectory app/controllers and app/helpers do?


Whereas the app/controllers help Rails find controller classes and essentially handles a web request from
the user, the helper holds any helper classes that assist the controller, model and view classes."

What command can you use to create a controller for the


subject?
In order to create a controller for subject, use the following command: C:\ruby\library> ruby
script/generate controller subject.

Name five things Rails Migration can do.


Rails Migration can do numerous things including renaming a table, adding a column, changing column,
dropping a table, removing column and more.

What is the Rails Controller?


Rails Controller is the center of your application as it helps the overall user, views and model interaction.
It's also known for handling URL well, regulating helper modules and regulating sessions.

How can you protect Rails against Cross-Site Request


Forgery?
To protect from any Cross-Site Request Forgery hacker attacks, you need to add 'protect_from_forgery' to
your ApplicationController.'

What does garbage collection do in Ruby on Rails?


Garbage collection performs a variety of functions including allowing for pointer values removal and
removing the inaccessible objects from the memory, among other things. In essence, garbage collection
helps free up memory for other processes.

Name three of the limits of Ruby on Rails?


Ruby on Rails has various features that it doesn't support which makes it unusable for some programmers.
This includes linking to more than one database at a time, connecting to more than one database server at
a time and foreign key in databases.

What are some advantages of using Ruby on Rails?


Ruby on Rails has various advantages. For one, it makes a programmer's work more productive. It's also
open-source and completely free. In addition, it provides programmers with the opportunity to write code
that acts on actual code rather than data.

Name the four types of variables available in Ruby Class


The four types of variables available in Ruby Class include local variables, global variables, class
variables and instance variables.

You might also like