In my work at Kloudlog I am responsible for building a React application by assisting with software architecture decisions and feature design, and implementing these ideas and structures in extensible patterns. My position requires a high degree of self-management and the ability to solve issues and blockers independently and as a team.
I have an NDA with the company. Tasks and techniques authorized to disclose are as follows. Multiple Context/Reducer pattern was used to manage separate concerns in the application. Multiple coding languages are parsed and operated upon. A custom React and SVG drag and drop was created. API requests for data retrieval and a websocket for real-time data feed. Microservices environment used to separate layers, and to facilitate CI/CD by multiple development teams. Standard Agile practices and schedules followed.
A custom layout and build for a client running specialty-food delivery business, primarily conducted and advertised on mobile. The client requested that all materials be presented the same, while on a single page, with no loss of content on mobile. I worked in tandem with a UX writer to achieve the client's requests and generate site language and microcopy. The project's primary challenge was in it's layout and copy needs rather than it's technical build.
Wyldgreens is a Landing page, About page, Product page, and Order page in one. It uses a parallax on desktop and gradually moving to a Colorado mountain scene for customer familiarity and business branding. Custom CSS, JS animation, and form work. A Node server handles an automatic order responder with customizable template.
A site produced for a sole proprietor whose business model was previously restricted to Instagram. This limited access to clientele and the further monetization. The project's goal was to merge different types of content and advertisement in a single place so as to increase the value of every post made. The LumberJack theme provided a solution by directly embedding the existing business traffic, link-through traffic is increased while granting the audience access to other materials and monetizable content.
'Friendly' design elements that match the business' mission statement generate a 'brand sense' that appeals to the target demographics. Mobile-friendly content creation allows the business owner to produce content more efficiently and from any place they have service.
LumberJack Theme
template in-production
"LumberJack" is a Full Stack template developed for small businesses and social media creators. The theme integrates third-party services to eliminate issues associated with code-heavy CMS templates. Featuring a headless CMS, a multi-network aggregator, and automatic email responses by NodeMailer - LumberJack's needs for maintenance and updates are low.
Designed for a two-color brand scheme with highly legible greyscale copy.Making use of third-party API's keeps the website operator from having to engage with the site code after launch, keeping user-breakage to a minimum. Card elements are modular and can be used in a variety of configurations, color and size. LumberJack's blog is generated using EJS and Prismic. Curator allows owners and creators to build feeds from more than one network, enabling more cross-network audience engagement.
Codestasher is a place to store your re-useable code. Three levels of nesting are available to organize your code entries. User can drag and drop entries between existing categories. Each entry can contain multiple snippets designated to different files. A single click action copies your code to the clipboard, ready to paste into your project.
The Ace Editor library is used to create a developer-friendly UI, with syntax highlighting and common editor operations. Multiple languages can be represented in each entry and highlighted appropriately. This is a high-value project that will be further developed.
www.elephantchart.com
Proof of Concept
Elephant Chart is an organization application. It features a 'life-like' drag and drop, and saveable custom charts and layouts. Firebase is used for authorization and storage of chart data. Users can log in via Google or any standard email address. The application makes use of moveable visual containers that can be grouped and layered. Built with React, using TypeScript and a Context API & Reducer for extensibility.
Each note has a tray where the user can store additional information. A 'Mat' function allows the user to group and move notes or other mats together. Backboard and note colors can be set by user and individual notes can be checked off.
Delta Trades
in-testing
This project is being developing with another engineer. The software is built on a node server, which chains various modules together resulting in a potential Options Contract being purchased, and followup Stop Limit Order being placed.
There are 10 distinct modules, a simple chart interface, and a database that a generated data packet moves through or is operated upon.
Small coupler modules sit between the server and module. This decouples the server and module allowing for controlled development and potential middleware in the future.
An Interface Pattern is under development to allow for multiple Investor API Clients to be connected and run simultaneously from the same algorithm.
A logger module continously sends updates to an alert manager and finally to a database, and a simple custom React UI and candlestick-chart allows for historic viewing of the algorigthm for testing.
JavaScript ES6 and the WebAudio API are used to provide a web-based ear-trainer and infinite music generator. The tools help a student train their musical ear in the subjects of melody, relative pitch, pitch memory, and tempo. The Music Generator is an early passion project, however the underlying logic in how to solve the musical problems works well.
The goal of the project, given further development, is that the generator will express the power of musical structures (usually termed 'music theory') by allowing them to 'speak' without human interaction.
The Melodic Trainer facilitates musical development through use of an invaluable skill that is difficult to methodically practice. The melodic idea consisting of the same note, but different tones/instruments, is called "klangfarbenmelodie". The trainer utilizes and teaches this with a mode randomizing the playback to multiple orchestral instrument choices. This develops the ear to be sensitive to pitch while listening to instruments outside of the student's familiarity.
A rainy-day project to capture the motion of the planets of the solar system. I've loved space and the stars since I was a young kid. This project is a way that I can do some 'exploring' of space on my own. Next task is to work up a more convincing Moon Component, and add the appropriate moons to each planet. There are almost 200 moons in our solar system.
The imaging effect is a combination of CSS and React. Positioning is found from a normally-positioned object, whose coordinates are then cast onto a separate plane that is rotated down to a horizontal 'orbit'. Combined it forms a 3D illusion, and not a true 3D space.
The background is an image from the new James Web Telescope. The planets and sun all exist on scale with each other in size and orbital angle. However, to make it visible on the screen certain bodies needed to be further scaled down in size. The four inner planets and as well as Pluto are correctly related in size to each other, the four large gas giants are in reality 20 times larger than they appear in this simulation, and the sun is 200 times larger than in the simulation.
uLog is a simple test package for JavaScript and Node.js. It has just one test action, to verify the return of a function. uLog outputs all test data to a .txt file in the project directory.
User can categorize the test run and the add a note which will be added to the test log. Expected failure is noted and Pass/Fail is displayed accordingly. Color coded log makes for ease in identifying problems. Log output includes the function definition. Planned features include an options object to customize the output.
This is a desktop application used to query from multiple databases using the same user interface. The application is highly extensible through usage of using dependency injection and a software interface pattern.
The primary functional requirement of this application is to query different database providers from the same application window. The requirements do not encompass extensive creation of records at this time, however full SQL statements can be interpreted. Layered architecture and software interfaces will allow for an easy transition to a more robust UI.
React
ES6 / SASS
Node / Express
SQL / NoSQL
HTML5 / CSS3
Firebase
EJS / Vanilla JS
Git / Github
Python
previous education
Bachelor's of Music
in Performance
Classical Guitar
Jazz Piano
previous experience
Owner/Operator
Adult-focused
Music
Instruction
2007 - 2019
Owning and operating a music instruction business for 10 years, partially taught online, I have experience in a remote setting where a high level of interaction is required. I can manage my own workflow and enjoy organizing a project into smaller tasks.
Preparing music requires you to approach each challenge from
as many directions as it takes, and in performance you always
need a backup plan. Music requires you to utilize established
principles - while also thinking on your feet
and being
creative.