Erik Rasmussen, Styled-components Developer in Colindres, Spain
Erik Rasmussen

Styled-components Developer in Colindres, Spain

Member since May 31, 2018
Erik is a full-stack JavaScript expert with over 25 years of development experience—specializing in React, Redux, forms in React, and GraphQL. He's obtained a spot in the top 100 GitHub users with over 20,000 stars and is also the author of the two of the three most popular form libraries in React: Redux-Form and React-Final-Form.
Erik is now available for hire




Colindres, Spain



Preferred Environment

Next.js, JavaScript, React, Node.js, VS Code

The most amazing...

...thing I've coded is a weighted tagging system used to match profile preferences to golf instructional vids; informed by previously seen and ranked related vids.


  • Senior Web Architect

    2006 - PRESENT
    Internet Alliance, Inc.
    • Designed and implemented a DOM system for creating dynamic web pages that allows a web designer the maximum freedom to redesign dynamic web pages using only my knowledge of HTML and CSS.
    • Created a functional programming library in Java for better code reuse across the company's codebase.
    • Integrated PayPal Express Checkout and Google Checkout into the company's websites.
    • Integrated PowerReviews into the company's websites.
    • Reimplemented all of PowerReviews' functionality from scratch for SEO reasons.
    • Wrote, from scratch, an eCommerce system with shared products across all sites; including complex product configurators, product selection wizards, and search tools.
    • Developed, from scratch, a CRM system for salesmen to take calls and sell products.
    • Rebuilt that CRM system to use Ext JS libraries and a redesigned data object back-end.
    • Integrated United Parcel Service API shipping calls into the company's websites.
    • Developed, from scratch, a website which accurately evaluates a user's golf game with a weighted tagging algorithm; implemented via a questionnaire and that intelligently prescribes instructional videos that address each user's specific problems.
    • Made the questionnaire and video tagging system completely extensible and customizable to any domain, not just golf.
    • Created the editor for the question tree which was written in the Ext JS 4 framework.
    Technologies: CSS, SCSS, React, Angular, jQuery, Prototype Framework, PostgreSQL, JavaScript, Java
  • Senior Java Developer

    2004 - 2006
    Mage Web Development, LLC.
    • Reimplemented more than 30 eCommerce websites that I had previously implemented using Enhydra XMLC technology.
    • Designed a single interface to manage products across all the 30+ sites.
    • Created a visual query editor called a Dynamic Product List to allow runtime selection of products for various pages on the eCommerce sites.
    Technologies: Enterprise Java Beans (EJB), XMLC, Java
  • Senior Java Contractor

    2004 - 2004
    TUI UK
    • Quickly learned the structure of their holiday sales platform and fixed bugs and added features to their existing Lunn Poly website.
    • Designed and implemented a section of TUI's Thomson website allowing holiday shoppers to effectively browse travel brochures online.
    • Refactored and restructured existing holiday sales platform to allow teams based around the globe to migrate their travel websites onto a common TUI platform.
    • Streamlined the project's ANT build process to accommodate multi-team global collaboration.
    Technologies: Oracle, Apache Struts, Java
  • Senior Java Contractor

    2003 - 2004
    Perceptive Informatics
    • Educated a team of non-Java developers in the methods and technologies of web applications—enabling the team to web-enable their industry-leading clinical research trial management software.
    • Was instrumental in architectural decisions in the company's web-enabling project using Jakarta-Struts, OC4J, Tomcat, and Oracle.
    • Led the UML-based architectural design workshops.
    • Wrote a complete database-based mandatory field validation system using the Jakarta-Struts Validator framework.
    • Upgraded the Jakarta-Struts Table Tag library to write multi-record forms.
    • Designed a generic pop-up data lookup system that returned selected records to the calling page with client-side JavaScript.
    Technologies: UML, Oracle, Apache Tomcat, Apache Struts, Oracle Application Server, Java
  • Senior Java Developer

    2001 - 2003
    Mage Web Development, LLC.
    • Designed and developed a database-object system using Java Reflection and JDBC. Each business object was able to load, update, insert, and delete itself from the database.
    • Developed over thirty interlinking eCommerce sites using the aforementioned database-object system with both MS SQL Server and PostgreSQL database server, Jakarta-Struts, JSP/XSL technology, and Jakarta-Tomcat and Resin application servers.
    • Developed solely an enterprise web application to do accounts receivable, order management, inventory management, and task ticketing for portable toilet rental companies called; used Jakarta-Struts, EJB, Jakarta-FOP (a PDF report API for Java), PostgreSQL database server, XTP/XSL technology, and a Resin application server. is used daily by numerous subscribing companies.
    • Designed and implemented an in-house task management system using the above database-object system.
    • Successfully converted the task management system to use Prevayler technology, a database-free business object and transaction serialization system.
    Technologies: Resin, Apache Tomcat, XSL, JSP, Apache Struts, PostgreSQL, Microsoft SQL Server
  • Core Java Developer

    2000 - 2001
    • Developed a phonetic search algorithm to search customers in a custom billing application for a Norwegian telecommunications company.
    • Designed and implemented an XML based system of tracking database changes.
    • Created, from scratch, a mock telecommunications site; complete with web-based customer self-care and an eBilling solution for future UMTS/3G wireless technology that plugged directly into Libertis (eMIS’ billing application) to demonstrate at conferences and trade shows that Libertis could bill for UMTS services.
    • Played an integral part in the design and core development of the n-tier (value object) migration code for the Libertis' global billing system; used EJB tech.
    Technologies: XML, Enterprise Java Beans (EJB), Java
  • Internet Applications Developer

    1999 - 2000
    Network Computing Solutions
    • Finished the development an eCommerce site using IBM's Net.Commerce package called Buytechonline.
    • Completely redesigned and implemented a much better and faster site using Java Server Page technology (only one other programmer involved).
    • Was professionally trained and certified for IBM's WebSphere Application Server.
    Technologies: Microsoft SQL Server, Servlet, JSP, Java
  • Software Developer

    1999 - 1999
    Innovative Business Software A/S
    • Designed and implemented a software request system to store requests and bug reports from customers in a database and allow the transfer of those requests from user to user.
    • Learned Borland Delphi 4 and implemented a CGI application to access a Sybase SQL Server relational database.
    Technologies: Sybase, Delphi
  • Software Engineer

    1998 - 1999
    SBS Embedded Computers (now: GE Intelligent Platforms)
    • Designed and implemented software support packages for embedded computer products for DOS, Windows 95, and Windows NT.
    • Wrote hardware testing utilities that was used to program EEPROMs, generate and receive interruptions, and send and receive data across the VME bus.
    Technologies: Microsoft Access, C++, C
  • Software Developer | Manager

    1996 - 1999
    Horizon Systems Integration
    • Designed an online course publishing for North Carolina State University's chemistry department, including a C++ filter used to create standard web content.
    • Developed a database application in Microsoft Access for Hamilton Beach Proctor-Silex.
    Technologies: Microsoft Access, C++


  • Redux Form

    I wrote and maintained the most popular form management library for the entire React ecosystem with over one million downloads every month. It uses Redux to store form data via dispatching actions on every keystroke and form state change. It is used by Airbnb and the FBI.

  • React Final Form

    This is the successor to Redux Form and it's a very compact and fast library for form state management that uses the observer pattern; i.e. individual components "subscribe" to the parts of the form state that they want to be notified about and only rerender when they absolutely need to because their subscribed state has changed. It has roughly 40,000 monthly downloads.


  • Languages

    JavaScript, SCSS, CSS, Java, XSL, XML, Delphi, C, C++, UML
  • Frameworks

    Redux, Next.js, Express.js, Jest, Prototype Framework, Angular, Apache Struts, JSP
  • Libraries/APIs

    React Final Form, React, Redux Form, Node.js, jQuery
  • Paradigms

    Functional Programming, Functional Reactive Programming
  • Other

    Styled-components, Resin, XMLC, Enterprise Java Beans (EJB)
  • Tools

    Adobe Photoshop, VS Code, Apache Tomcat, Servlet, Microsoft Access
  • Storage

    PostgreSQL, MongoDB, Microsoft SQL Server, Sybase
  • Platforms

    Oracle, Oracle Application Server


  • Bachelor's Degree in Computer Science
    1996 - 2000
    North Carolina State University - Raleigh, NC, USA

To view more profiles

Join Toptal
Share it with others