Front-end Developer
2021 - 2022Captario AB- Consulted with the client on best practices regarding developing interactive data visualizations with D3.js and React.
- Refactored existing front-end data visualization code and added new features, such as "brush and zoom," to existing visualizations.
- Built new data visualizations, working across full-stack, and developing custom interactive front-end within React ecosystem. Prepared and cleaned large datasets on the back end with Python and pandas.
- Worked with the design team on maintaining and developing the UI surrounding the data visualization dashboards.
Technologies: React, D3.js, Python, TypeScript, Visx, Pandas, Data Visualization, User Interface (UI), Redux, Unit Testing, JestFull-stack Developer
2018 - 2021Samedi- Led the technical side of a web portal redesign, ensuring CSS/HTML code follows best practices.
- Gave feedback on designs and helped improve technical UI issues as well as UX issues.
- Spearheaded the integration of PayPal payments API into an existing React application with a Ruby on Rails back end.
- Reworked an existing React application to use SEO-friendly URLs.
- Worked on fixing cross-client rendering issues in HTML email templates.
Technologies: HTML, CSS, JavaScript, TypeScript, Ruby, Ruby on Rails (RoR), User Interface (UI), React, Responsive UI, Redux, Unit Testing, JestUI Developer
2019 - 2020African Budget Safaris- Built a web application for searching and dynamic filtering of safari tours. This application is the core of the new (unreleased) website. It uses the Vue.js framework for the font-end and communicates with Google Cloud Functions API.
- Created a simple webpack configuration to allow using of modern JavaScript while retaining compatibility with legacy browsers.
- Worked with the client on fixing various layout (CSS/HTML) issues across the new website.
Technologies: JavaScript, Vue, HTML, CSS, Webpack, User Interface (UI)Front-end Developer
2018 - 2019AlignAlytics (via Toptal)- Implemented a customizable SVG-based multi-column visualization for comparing data in various forms, including text, lists, bar charts, and heat maps.
- Created a value chain visualization for a client company.
- Built a CLI for synchronizing code between the local development environment and the Alytic.io web service.
- Developed a generic radar chart template to be used as part of the Alytic.io platform.
- Designed and created a custom chart showing relationships between three datasets.
- Created several variations of interactive tree chart visualizations.
Technologies: D3.js, CSS, JavaScript, Git, Data Visualization, HTML, Affinity Designer, User Interface (UI)Front-end Developer
2017 - 2018Wasphi- Created a set of reusable React and D3.js visualization components for basic charts.
- Built several custom non-standard chart components with D3.js.
- Helped design and build a dashboard allowing data exploration of Saudi workers abroad.
- Designed and built a dashboard that allows the data exploration of average student grades in various educational institutions.
- Created a dashboard showing Saudi labor market trends.
Technologies: TypeScript, React, D3.js, CSS, JavaScript, Git, Data Visualization, HTML, Affinity Designer, User Interface (UI), DashboardsFront-end Developer
2017 - 2017Dekunu Technologies- Built an interactive visualization dashboard with positional data collected from skydivers during jumps.
- Developed an algorithm to clean up spotty GPS data.
- Developed an algorithm for detecting moments when the skydiver exited the plane, opened the parachute, and landed.
Technologies: D3.js, JavaScript, CSS, Git, Data Visualization, HTML, Affinity Designer, User Interface (UI)Ruby Developer
2016 - 2017Toptal- Worked in a team of over 100 developers on maintaining the very platform you are using right now.
- Led the development of the Top Scheduler application used for scheduling meetings with Toptal clients.
- Continuously worked with PMs on directing the product and making sure code deliveries are made on time.
- Acted as an Agile coach for our team, making sure our Kanban-based process is running smoothly.
Technologies: Ruby on Rails (RoR), Ruby, CSS, Test-driven Development (TDD), PostgreSQL, Agile Software Development, Git, HTML, Object-oriented Programming (OOP), Object-oriented Design (OOD)Back-end Ruby Developer
2015 - 2015DirectVest (via Toptal)- Created an API wrapper for a folio institutional service.
- Constructed a full test suite for existing features.
- Refactored the application (From 1.5 to 3.9+ GPA on CodeClimate).
- Implemented multistep forms for the investment process.
- Built a dashboard that heavily relies on external APIs as well as low-level caching for increased performance.
Technologies: Ruby on Rails (RoR), CSS, Ruby, Test-driven Development (TDD), PostgreSQL, Git, HTML, Object-oriented Programming (OOP), Object-oriented Design (OOD)Full-stack Ruby/JavaScript Developer
2015 - 2015BizRevr (via Toptal)- Helped design and develop new features.
- Created an interface for bulk editing records similar to an Excel spreadsheet.
Technologies: jQuery, JavaScript, Ruby on Rails (RoR), CSS, Ruby, Test-driven Development (TDD), PostgreSQL, Git, HTML, Object-oriented Programming (OOP), Object-oriented Design (OOD), User Interface (UI)Full-stack Ruby/JavaScript Developer
2014 - 2015ThinkCERCA (via Toptal)- Created a one-page JavaScript application for assigning lessons to students.
- Maintained, improved, and added new features to existing Ruby on Rails and Ember.js code.
Technologies: CoffeeScript, PostgreSQL, Ember.js, Ruby on Rails (RoR), CSS, JavaScript, Ruby, Test-driven Development (TDD), Agile Software Development, Git, HTML, Object-oriented Programming (OOP), Object-oriented Design (OOD), User Interface (UI)Back-end Ruby Developer
2013 - 2014CampWire- Created a working payments system.
- Improved old core features and created new ones.
- Introduced new developers to the application.
- Wrote a full test suite for the application.
Technologies: Heroku, PostgreSQL, jQuery, Ruby on Rails (RoR), CSS, Ruby, Test-driven Development (TDD), Git, HTML, Object-oriented Programming (OOP), Object-oriented Design (OOD)Back-end Ruby Developer
2012 - 2013Whitespectre- Developed a web service for creating mobile application presentations.
- Created a web application test suite using RSpec.
Technologies: PostgreSQL, Ruby on Rails (RoR), CSS, Ruby, Test-driven Development (TDD), Git, HTML, Object-oriented Programming (OOP), Object-oriented Design (OOD), jQuery