I am a software engineer with a passion for developing aesthetically pleasing, highly-engaging user experiences. My specialty lies in building modular, full-stack JavaScript applications. React, Node.js, and GraphQL are some of my favorite technologies. Let's talk about SpaceX and find the best brunch spots in NYC.
Optimized a recursive React Fiber tree traversal algorithm in order to accurately capture memoizedState for all stateful Fiber Nodes and enable time travel state debugging
•
Used Acorn-JSX to parse React functional components’ JSX, generating an abstract syntax tree suitable to traverse in order to locate and store all declared useState hook variables
•
Designed Next.js, React Concurrent Mode / Suspense, and Context API testing sandboxes served by Node.js / Express to ensure the timeline of state snapshots is recorded correctly
•
Defined Typescript interfaces and types necessary for static type checking and IntelliSense
alerts, accelerating team workflows by simplifying debugging and enhancing scalability
•
Developed Jest and Puppeteer tests that enable accelerated team development cycles by preventing compatibility regression as new product features are built and deployed
•
Leveraged D3.js for an interactive state timeline visualization by using its modules to
compute SVG path attributes enabling React to render dynamic vector shapes to the DOM
•
Standardized the Travis CI / Github continuous integration workflow to automatically run
unit and end-to-end tests to prevent bugs from being introduced into production code
•
Reactime has been nominated for the Productivity Booster award at React Open Source Awards 2020 in Amsterdam
Launched two event discovery platforms with a talented team of 3 veterans of NYC’s tech startup community
•
Designed Adobe XD / Sketch wireframes and prototypes to create intuitive user experiences
before devising application architecture, writing code, and iterating based on user feedback
•
Employed React and React Router while building modularized SPAs leveraging dynamic re-rendering and unidirectional data flow to ensure code maintainability and extensibility
•
Implemented Ruby on Rails REST API models, HAML views, controllers, and serializers to
dynamically query a PostgreSQL database and retrieve data requested via URL slugs
•
Incorporated JWTs and Bcrypt’s one-way hashing algorithm to secure routes and API
endpoints with a login system that is protected against intruders and rainbow table attacks
•
Crafted an interactive React Native UI animation with variable states corresponding to the user’s touch position and movement in order to create an engaging user micro-interaction
React Build Tools | Platform for Creating Software Engineering Tutorials
•
Introduced Redux to inject stateful logic into functional component props and prevent prop-drilling in deeply nested components, while preventing unnecessary child component re-renders, ensuring a single source of truth, and enabling Redux DevTools for debugging
•
Containerized the application with Docker and configured its services with Docker Compose to enable rapid, reliable deployment while ensuring a consistent application runtime environment that helps streamline continuous integration and deployment
•
Integrated Webpack and Babel to generate browser-compatible ES5 by transpiling ES6+ and JSX syntax while simultaneously adding workflow-accelerating hot module reloading, minifying the codebase to reduce overall bundle size, and reducing application load times
joshuahoward.tech | Personal Website
•
Utilized the React-Spring physics animation library while leveraging React hooks, CSS3 keyframes, HTML5’s canvas element, function memoization, and JavaScript’s requestAnimationFrame method to create performant, highly-interactive animations
Should I Live Here | Visualizer for NYC’s Open Data
•
Generated a custom Mapbox GL heatmap to enhance the application’s user interface by parsing NYC’s open data into GeoJSON data and layering images and vector shapes
StudyCode | Tool for Creating Personal Study Guides
•
Created a GraphQL / Express API by refactoring legacy REST endpoints and writing customized schemas and asynchronous PostgreSQL queries to allow frontend developers to define data structures in order to reduce client-side latency and prevent over-fetching