About
Hi! My name's Jacky and I'm a finance nerd turned software engineer. Some of the things I love:
spending the whole day hiking the Sedona Red Rocks, cooking up a hot bowl of beef noodle soup
on a chilly night,
playing a few sets of tennis on the local hard courts, and breathing life into an imagination by
building a full-stack web application using React, Redux, PostgreSQL, and Express / Flask. Let's
solve some
big problems together, or just talk hobbies!
Check out my resume here.
Contact me at jacky.hao18@gmail.com
Skills
- JavaScript
- Python
- PostgreSQL
- React
- Redux
- Express
- Sequelize
- Flask
- SQLALchemy
- Node.js
- HTML / CSS
- Docker
- Git
Projects
Leverage is a Robinhood-inspired web application in which users can trade stocks alongside their
friends.
-
Integrated an external financial data API, IEX Cloud, to fetch JSON-encoded responses for
populating stock and company
details in order to provide users with up to date asset and portfolio value information.
-
Designed a backtracking algorithm to backfill historical stock price data during periods of
stock and market inactivity
in order to render seamless time series data utilizing Recharts, a React charting library.
-
Established a self-referential many to many relationship in the SQLAlchemy object-relational
mapper to create
association tables for capturing the social features of the application, such as friends and
friend requests.
Whereabouts is a choose-your-adventure web application in which users can explore and share about
randomly generated locations.
-
Utilized the Google Maps API in conjunction with a geographical coordinate randomization
algorithm to present users with
maximum radius bound locations to visit and share with their followers.
-
Connected the Flask backend to AWS S3 for photo storage and organization to manage user image
uploads, reduce server
loads, and enhance scalability.
-
Normalized state shape in Redux and used slice reducers to organize the state tree to more
intuitively dispatch thunks
to render data on the frontend.
Court Reserve is an Airbnb-inspired web application for booking tennis courts to allow users to play
when and where they want.
-
Implemented a search feature using Redux and database query operations in the Sequelize
object-relational mapper to
allow users to filter for tennis courts in their particular cities.
-
Secured user permissions through the use of JSON Web Token-based authentication and custom
middleware functions to
verify user identity.
Contact
Elements
Text
This is bold and this is strong. This is italic and this is
emphasized.
This is superscript text and this is subscript text.
This is underlined and this is code: for (;;) { ... }
. Finally, this is a link.
Heading Level 2
Heading Level 3
Heading Level 4
Heading Level 5
Heading Level 6
Blockquote
Fringilla nisl. Donec accumsan interdum nisi, quis tincidunt felis sagittis eget tempus
euismod. Vestibulum ante ipsum primis in faucibus vestibulum. Blandit adipiscing eu felis
iaculis volutpat ac adipiscing accumsan faucibus. Vestibulum ante ipsum primis in faucibus lorem
ipsum dolor sit amet nullam adipiscing eu felis.
Preformatted
i = 0;
while (!deck.isInOrder()) {
print 'Iteration ' + i;
deck.shuffle();
i++;
}
print 'It took ' + i + ' iterations to sort the deck.';
Lists
Unordered
- Dolor pulvinar etiam.
- Sagittis adipiscing.
- Felis enim feugiat.
Alternate
- Dolor pulvinar etiam.
- Sagittis adipiscing.
- Felis enim feugiat.
Ordered
- Dolor pulvinar etiam.
- Etiam vel felis viverra.
- Felis enim feugiat.
- Dolor pulvinar etiam.
- Etiam vel felis lorem.
- Felis enim et feugiat.
Icons
Actions
Table
Default
Name |
Description |
Price |
Item One |
Ante turpis integer aliquet porttitor. |
29.99 |
Item Two |
Vis ac commodo adipiscing arcu aliquet. |
19.99 |
Item Three |
Morbi faucibus arcu accumsan lorem. |
29.99 |
Item Four |
Vitae integer tempus condimentum. |
19.99 |
Item Five |
Ante turpis integer aliquet porttitor. |
29.99 |
|
100.00 |
Alternate
Name |
Description |
Price |
Item One |
Ante turpis integer aliquet porttitor. |
29.99 |
Item Two |
Vis ac commodo adipiscing arcu aliquet. |
19.99 |
Item Three |
Morbi faucibus arcu accumsan lorem. |
29.99 |
Item Four |
Vitae integer tempus condimentum. |
19.99 |
Item Five |
Ante turpis integer aliquet porttitor. |
29.99 |
|
100.00 |