Samuel Purcell, Developer in Brooklyn, United States
Samuel is available for hire
Hire Samuel

Samuel Purcell

Verified Expert  in Engineering

Software Developer

Location
Brooklyn, United States
Toptal Member Since
May 7, 2017

Samuel is an experienced web and mobile developer with a traditional computer science education. He cares deeply about working on things that matter—ideating on interesting products, or figuring out how to prioritize work in a team setting. He's spent the last two years working primarily on Cymbal: a social network for music built for Android and iOS in React Native.

Availability

Part-time

Preferred Environment

Zsh, Sketch, Redux, React Native, Sublime Text

The most amazing...

...thing I've worked on was a tool that allowed users to query news stories and see how they developed temporally and geographically.

Work Experience

Lead Engineer

2015 - PRESENT
Cymbal
  • Built and supported a cross-platform mobile social network using React Native.
  • Migrated web code using React into React Native in order to achieve higher team efficiency.
  • Created rigorous testing and code review plans to ensure high quality releases.
  • Built and supported multimedia back-end features, like the ability of users to share and store GIFs.
Technologies: Java, Objective-C, PostgreSQL, Elixir, Redux, React Native, JavaScript

Software Engineer

2014 - 2015
KAYAK
  • Contributed to rebuilding KAYAK’s web infrastructure and port old code to a newer, more robust, and comprehensible framework in Java and JavaScript,.
  • Built and designed internal tool with Node.js and Backbone.js that monitored file changes and notified users. Allowed the team to collaborate closely on ongoing designs.
Technologies: JavaScript, Java

Cymbal

Cymbal is the music social network for mobile devices. Whether music is your life, or you want to get in the loop; Whether you love metal, trap, or baroque classical; whether you want to find a community of like-minded listeners or just want to share songs with one special musical soulmate, Cymbal is how the world shares music.

Our goal is to knock down every barrier for sharing songs with the people you love and meeting people who love the same music you do. Without relationships, music is nothing; with music, relationships bloom. Cymbal brings people together with the power of music.

Features:
• Explore the front page, always full of the moment’s top trending songs
• Post and listen to your favorite songs from Spotify, Apple Music, or SoundCloud
• Start a direct message chat with a friend
• Listen to weekly trending song playlists from every hashtag you follow
• Connect with anyone on the app on global song pages
• Send GIFs and songs to friends with the media keyboard
• Queue songs to play up next
• Multi-account switching
• And, if you can believe it, much more

Code to Request Users Based on Twitter IDs

This code was built for a feature that hit Twitter's native SDK and got a Twitter ID list. We wanted to then map these IDs onto existing Cymbal users. On the client, this was limited by the URL size of the GET request and the fact that we wanted the load times to be quick.

Since Twitter gave us as many as 50,000 IDs, we needed to issue the request in chunks. We also needed to ensure that the request set was fault tolerant. This code snippet solves those problems by dividing the ID array into pieces and functionally building a promise chain that swallows the errors.

Ancoria Bank Create

Ancoria Bank Create simplifies the onboarding experience for new bank members. I worked closely with the leadership at Ancoria bank to build a seamless and cross-platform signup experience. Complete with on-device secure encryption, complex navigational flows, push notifications, and the latest improvements in React Native technologies, this was a very challenging and interesting project.

Languages

TypeScript, JavaScript, CoffeeScript, SQL, Objective-C, C, Elixir, Python, Java

Frameworks

React Native, Redux, Phoenix, iOS SDK

Platforms

Web, Android, MacOS

Libraries/APIs

jQuery, Proguard, Node.js, Backbone.js

Tools

Sublime Text, Gradle, Xcode, Zsh, Sketch, NGINX, IntelliJ IDEA

Paradigms

Mobile Development, Functional Programming, Agile

Storage

PostgreSQL, MySQL, MongoDB

Other

SDKs

2011 - 2015

Bachelor of Science Degree in Computer Science

Tufts University - Boston, MA, USA

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring