William Oropallo, Software Developer in Tampa, FL, United States
William Oropallo

Software Developer in Tampa, FL, United States

Member since February 27, 2020
William is a computer science and engineering Ph.D. with 10+ years of expertise in the development of robust software applications. He’s skilled in optimizing systems and libraries by designing efficient data structures and algorithms that reduce overhead and increase software effectiveness. William has a proven record with research and development in software engineering, web development, computational geometry, and data processing.
William is now available for hire




Tampa, FL, United States



Preferred Environment

AWS Lambda, Slack, Ruby on Rails (RoR), Ruby, Express.js, Electron, React, Three.js, Node.js, Git, Visual Studio Code, Visual Studio, Redis, PostgreSQL, SQLite, MySQL, MongoDB, Android, iOS, Windows, Linux, MacOS

The most amazing...

...product that I have designed is an algorithm for slicing NURBS models (defacto standard for CAD software) using point clouds to prepare them for 3D printing.


  • Software Engineer

    2018 - PRESENT
    • Operated within teams and independently to build web, mobile, and desktop applications.
    • Designed a lossless encoding and compression technique for specialized data with error detection in C and Swift.
    • Created a simple interpreted language and virtual state machine using C++ for running small-scale repeatable tasks.
    • Analyzed and improved mission-critical features to Ruby on Rails/Node.js based applications.
    • Built mobile applications using both Apple's Storyboarding and SwiftUI.
    • Composed functional pipelines for processing and interpreting data from external APIs for serverless web applications.
    • Developed the implementation of low-latency and efficient Node.js server-side applications.
    • Created a JSON based API with persistent storage using WebSockets and MongoDB.
    Technologies: Electron, Node.js, MongoDB, WebSockets, Rust, Ruby, C, C++, JavaScript, Swift
  • Computer Science and Engineering Faculty

    2018 - 2019
    University of South Florida
    • Collaborated with the computer science and engineering department to modernize courses materials with current industry trends and perform assessment collections for the Accreditation Board for Engineering and Technology’s review of university accreditation.
    • Developed a new course teaching students the JavaScript/ECMAScript language as it relates to practical and theoretical computer science problems in the software industry.
    • Used personal real-world experience mixed with abstract principles and concepts to design curriculum material that students could use to develop a professional portfolio.
    • Successfully proposed the software engineering course to the university to be a high impact practice course under the enhanced general education standards.
    • Created new functional/declarative programming projects for data structures courses centered around the functional programming paradigm using JavaScript.
    • Taught program design, data structures, software engineering, and advanced computer science electives.
    Technologies: Electron, JavaScript, C++, C
  • Doctoral Candidate

    2014 - 2018
    University of South Florida
    • Produced algorithms for accurately and directly slicing freeform 3D models that outperformed the industry standard tessellated slicing method utilized by 3D printing.
    • Introduced an improved and novel approach for slicing NURBS (non-uniform rational basis-spline) surfaces used by CAD systems that solved errors and failures caused by other algorithms while still avoiding the surface-to-surface intersection problem.
    • Designed point clouds structures and discrete grid structures to decrease computation time and memory usage when working with complex geometries and large data sets.
    • Developed a fully functional system for the examination and testing of NURBS curves and surfaces in C with a WebGL renderer in JavaScript.
    • Presented algorithms and finding at the International CAD Conference multiple times.
    • Published multiple papers on topics related to additive manufacturing, point clouds, the challenges of tessellated and parametric slicing, and geometric algorithms.
    • Analyzed and compiled the current literature surrounding additive manufacturing, NURBS, point clouds, and geometric algorithms while investigating the challenges related to the domains of computer science and engineering.
    Technologies: WebGL, OpenGL, Three.js, JavaScript, C++, C
  • Software Engineer

    2008 - 2016
    Greater Washington Publishing, LLC
    • Engineered a dynamic phone number creation and retention system using Twilio for call tracking and data modeling to create an improved and trackable call lead for the sales team to provide their clients.
    • Increased speed of search and sort procedures in Postgres data implementation by completely reinterpreting and rewriting algorithms for access to significantly decrease overall user wait times and response times.
    • Implemented dynamic and automated administration system for managing and updating content with little user interaction decreasing time spent on administration tasks.
    • Improved search algorithm functionality for an already existing databases' third-party system optimizing search times for all queries.
    • Analyzed business specifications provided by companies and individuals to produce systems that could efficiently and accurate parse client generate data and content.
    • Created a dynamic attribute system for the creation of schema-less data in a relational database to allow meta-programming to persist in the datastore for future production and maintenance.
    • Redesigned the SQL database in a NoSQL document-oriented architecture to better meet the needs of existing data and accelerate the reading and writing operations for both current and future content.
    • Wrote complex search functionality for Ruby on Rails applications using a custom MongoDB-based modeling system for more efficient and accurate lookup operations.
    • Optimized and normalized existing SQL database queries and schemas for to minimize the need for database structure redesign in future releases.
    • Refactored previous project code for compatibility with new systems from an outdated build of Python framework to the most current Ruby on Rails.
    Technologies: MongoDB, MySQL, PostgreSQL, Ruby on Rails (RoR), Ruby, JavaScript
  • Research Assistant

    2012 - 2013
    University of South Florida
    • Developed feature selecting algorithms for choosing the most valuable attributes in a data set when identifying the survivability of squamous cell lung cancer patients.
    • Engineered feature selection algorithms that performed with 80-90% accuracy on data outside of the training set, resulting in accurate prognosis categorization.
    • Utilized Weka to perform complex analysis of large data sets and accurately classify new data producing more precise results for training future models.
    • Worked with a group of professors, medical doctors, and graduate students to build solutions for automating the generation of cancer patients' prognosis.
    • Collaborated with oncologists at the Moffitt Cancer Center to review the current literature on cancer identification and better identify interdisciplinary approaches.
    Technologies: Machine Learning, Weka, Java


  • A Point Cloud Approach to Object Slicing for 3D Printing

    I developed an algorithm that generates point clouds and slices models within a tolerance. The algorithm uses the original NURBS model and converts the model into a point cloud, based on layer thickness and accuracy requirements. The algorithm then uses a gridding structure to calculate where intersections happen and fit B-spline curves to those intersections. This dissertation shows that a point cloud approach to preprocessing and slicing models is robust and accurate. This method can find accurate intersections and can ignore certain anomalies and errors from the modeling process. The point cloud approach to object slicing avoids the complexities of directly slicing models while evading the error-prone tessellation stage.

  • Ten Challenges in 3D Printing

    After researching and synthesizing the current literature in the domain of 3D printing, I wrote this piece to summarize the most pressing difficulties in the field. The purpose of this paper is to paint a more realistic picture by identifying ten challenges that clearly illustrate the limitations of the technology. Others have cited this paper in over 140 other works as of March 2020.


  • Languages

    JavaScript, Swift, C, C++, Ruby, TypeScript, HTML, CSS, PHP, Java, Rust
  • Frameworks

    Ruby on Rails (RoR), Electron, Express.js, Sinatra
  • Libraries/APIs

    React, Node.js, Three.js, Ramda, OpenGL, WebGL
  • Paradigms

    Functional Programming, Parallel Programming, Concurrent Programming
  • Platforms

    iOS, MacOS, Linux, Windows, Android, Visual Studio Code, AWS Lambda
  • Storage

    MongoDB, MySQL, PostgreSQL, Redis, SQLite
  • Tools

    Xcode, Git, Visual Studio, Slack, Weka
  • Other

    Machine Learning, WebSockets


  • Doctor of Philosophy Degree in Computer Science and Engineering
    2014 - 2018
    University of South Florida - Tampa, Florida
  • Master of Science Degree in Computer Science
    2012 - 2014
    University of South Florida - Tampa, Florida
  • Bachelor of Science Degree in Computer Science
    2007 - 2011
    University of South Florida - Tampa, Florida

To view more profiles

Join Toptal
Share it with others