◈ Projects
What I have built, who it was for and what it was built with
36 projects
Sampling campaigns microfrontend
Total Wine & More · via Factor K Software
RetailFront-endLets stores create and run product sampling events: associate available products, set store-specific constraints and schedule the campaigns.
ReactTypeScriptGraphQLMicrofrontendsStore management microfrontend
Total Wine & More · via Factor K Software
RetailFront-endBack-office for store data: locations, status, operating and sampling hours, fulfilment timeslots and vendor restrictions.
ReactTypeScriptGraphQLStaff reviews & team picks
Total Wine & More · via Factor K Software
RetailFront-endInternal app for employee reviews and product recommendations, with role-based permissions for managers and staff, inline editing and filtering.
ReactTypeScriptReduxGraphQLFusion design system
Total Wine & More · via Factor K Software
RetailFront-endShared component library consumed by every Fusion microfrontend — around 70 React components documented in Storybook and released with Changesets.
ReactTypeScriptStorybookSampling & item APIs
Total Wine & More · via Factor K Software
RetailBack-endMulti-layered .NET services behind the sampling and item domains, with Entity Framework migrations and Kafka messaging for change feeds.
C#.NETEntity FrameworkKafkaPostgreSQLStaff profile microservices
Total Wine & More · via Factor K Software
RetailBack-endA set of Go services that read and write staff profiles and their product reviews, fed by a scheduled HR import and a Kafka subscriber.
GoPostgreSQLRedisKafkaGraphQL federation subgraphs
Total Wine & More · via Factor K Software
RetailBack-endApollo Federation subgraphs that expose the ratings and item domains to the storefront through a single gateway, with caching and tracing.
Node.jsTypeScriptGraphQLRedisIn-store sampling app
Total Wine & More · via Factor K Software
RetailMobileReact Native app staff use on the floor to run sampling plans, validate inventory and scan barcodes on handheld devices.
React NativeTypeScriptGraphQLHome equity & PMI calculator
Keller Williams · via Applaudo Studios
Real EstateFront-endHomeowners enter their home value and mortgage details to see their equity and find out whether they qualify to drop private mortgage insurance.
ReactNext.jsTypeScriptGraphQLVendor portal & coverage areas
Keller Williams · via Applaudo Studios
Real EstateFront-endVendor sign-up, profile and licence checks, plus a map where each vendor draws the service areas they cover.
ReactNext.jsTypeScriptGoogle MapsProperty listings web app
Keller Williams · via Applaudo Studios
Real EstateFront-endSearch and browse homes to rent or buy, with affordability and savings calculators and graphs for loan amortisation and compound interest.
ReactJavaScriptGraphQLConsumer mobile app
Keller Williams · via Applaudo Studios
Real EstateMobileThe mobile side of the consumer product: property search, saved searches, agent lookup and the same equity and amortisation tools.
React NativeJavaScriptGraphQLFlutterHomeowner onboarding
Keller Williams · via Applaudo Studios
Real EstateFront-endMobileA step in the onboarding flow where a homeowner adds their house and previews its estimated price from the address, mirrored as mobile widgets.
ReactTypeScriptFlutterGraphQLOpen house virtual tour
Keller Williams · via Applaudo Studios
Real EstateFront-endBack-endAgents set up an open house room by room and upload tour media; visitors walk the property room by room and leave a survey.
ReactTypeScriptReduxNode.jsPostgreSQLShared component library
Keller Williams · via Applaudo Studios
Real EstateFront-endThe React UI library the homeowner and vendor apps share, published as a package and documented in Storybook.
ReactTypeScriptStorybookDriver optimization software
Asurvio · via FusionHit
SaaSFront-endDesktop utility that scans a PC and updates its drivers. Built the React views that surface the product's features and metrics.
ReactTypeScriptReduxC#Product design system
Asurvio · via FusionHit
SaaSFront-endThe component library shared across the consumer and business editions of the driver platform.
ReactTypeScriptStorybookBilling & checkout
Asurvio · via FusionHit
SaaSFront-endThe cart and payment flow for the subscription products, including card entry and plan selection.
ReactTypeScriptReduxUser onboarding
Asurvio · via FusionHit
SaaSFront-endPre-purchase registration and first-run setup, plus the offboarding flow for users leaving the product.
ReactTypeScriptWeb protection extension
Asurvio · via FusionHit
SaaSFront-endBrowser extension that blocks ads and trackers and lets users whitelist domains, built on the AdGuard filtering engine.
TypeScriptReactProduct quotation portal
TELUS International
TelecomFront-endBack-endGenerates quotes for the products the company offers to partners, checking availability per location. Re-engineered the portal from location-driven to product-category-driven.
AngularTypeScriptJavaERP payslip synchronisation
TELUS International
TelecomFront-endBack-endBrought employees outside the company ERP into its systems, enabling agent-hour tracking in regions where the ERP was unavailable, such as Ireland and China.
ReactJavaScriptNode.jsAgent time tracking
TELUS International
TelecomBack-endThe tool that tracks contact-centre agent time and computes the matching payroll, plus migrating parts of it to Google Cloud.
PHPJavaScriptGCPSQLHistorical payslips
TELUS International
TelecomFront-endBack-endA module to consult historical payslips for the Guatemala region, with its APIs and the matching front-end changes.
PHPJavaScriptSupervisor notifications & i18n
TELUS International
TelecomBack-endEmails and notifies supervisors about tickets that need their approval, and translates the views into Chinese and Spanish.
PHPJavaScriptDental practice management
Revodent
HealthcareFront-endBack-endMulti-tenant SaaS for dental clinics: patient registration, an interactive odontogram, appointments and clinical records. Co-founded and built end to end.
ReactTypeScriptNode.jsPostgreSQLGovernment data migration & ETL
Gobierno de El Salvador
Public SectorDataLarge-scale information migration: ETL workflows that extract, clean and consolidate data from several legacy databases, with automated validation and analytical reports.
PythonSQLUniversity jobs & news app
Universidad Don Bosco
EducationMobileMobile app for Android and iOS that tells students about job opportunities, events and news from the university's partners, with push notifications.
React NativeJavaScriptCareer Development Center site
Universidad Don Bosco
EducationFront-endBack-endA site presenting the department's news, coordinators and programmes, aimed at the external institutions that finance them.
C#.NETJavaScriptSQL ServerGraduate profile tracking
Universidad Don Bosco
EducationBack-endModules that track students' professional profiles and generate a PDF of each graduating class, so the university can present them to companies.
C#.NETSQL ServerOffline-first mobile module
IoT
IoTMobileBack-endCaptures form data where connectivity is limited and syncs it once the connection returns, with serverless functions handling validation and persistence asynchronously.
React NativeTypeScriptAWSRemote explorer robot
Universidad Don Bosco
RoboticsBack-endDataA remotely controlled robot that senses environmental variables over IoT, presented at IEEE CHILECON 2017 in Chile.
PythonJavaScriptVR condominium tour
midō
Real EstateMobileAndroid virtual-reality app, driven by a phone and a cardboard viewer, that walks you through condominiums from a Central American real-estate group.
UnityC#AndroidCastillo Auto Parts
Personal
E-commerceFront-endBack-endAuto-parts storefront for El Salvador: parts matched to a vehicle, inventory reservations, local payments and a back office for the shop.
Next.jsTypeScriptPostgreSQLAWSArt gallery site
Personal
E-commerceFront-endPortfolio site for a visual artist, with the catalogue written as content files, structured data for search engines and contact over WhatsApp.
Next.jsTypeScriptiOS banking login module
Personal
SaaSMobileA full sign-in module built to a written banking spec: one-time passwords, biometrics, digital signature and profile selection, with certificate pinning.
SwiftiOS