Andres Quiroz
Verified Expert in Engineering
Big Data Developer
Andres is a Ph.D. in Computer Engineering, graduated from Rutgers University, who specializes in autonomic computing, cloud computing, and large-scale distributed systems. He has research and development experience in data analytics, cloud resource management, and middleware, with particular expertise in Java, C++, and Android.
Portfolio
Experience
Availability
Preferred Environment
GitHub, IntelliJ IDEA, NetBeans
The most amazing...
...collection I have is a library of over ten years' worth of reusable Java code I've created for various projects and continue to use to this day.
Work Experience
Research Scientist Level III
Xerox PARC
- Submitted 12 patent applications (1 awarded so far) in the areas of automated business process management, data privacy management, data analysis, and distributed middleware.
- Led a project team (5 people) to design and prototype a scalable cloud analytics platform for the IT Outsourcing group at Xerox.
- Worked on a contribution to the Apache Hive open source project to extend functionality for large scale joins.
- Finalist in Services Cup contest of the IEEE International Conference on Service Computing (SCC), 2012, with Automating Reusable Workflow Development from design to instantiation.
- Successfully demoed, at a Xerox client symposium, a hybrid cloud workflow using 1000+ processors over 3 cloud sites.
Graduate Assistant and Post-doc
Rutgers University
- Received Academic Excellence Award from the Department of Electrical and Computer Engineering.
- Contributed to the creation of the NSF Center for Autonomic Computing, serving as Industrial Advisory Board Chair in 2012.
- Contributed to the design and early development of CometCloud (http://nsfcac.rutgers.edu/CometCloud), a virtual computational cloud infrastructure that integrates local computational environments and public cloud services on-demand.
- Co-chaired the Doctoral Symposium at the International Conference on Autonomic Computing (ICAC 2009, 2010).
- Created a distributed clustering algorithm running on a peer to peer network that scaled to thousands of nodes.
Experience
Sudoku Solver
The main loop of the solver follows two primary approaches. First, it selects a cell with only one possibility remaining. If such a cell cannot be found, the solver identifies the remaining cell within a patch for a particular number. In the absence of both of these conditions, the code attempts to apply reduction strategies from a set of pluggable classes.
These reduction strategies analyze the current state of the board to eliminate possibilities for each cell or patch. The main loop continues until either the Sudoku puzzle is solved or until no ultimately constrained cell is found and no reduction strategy proves successful. This code can solve most easy and medium-level Sudoku boards and even tackle some difficult boards using the aligned cell strategy.
Java Programming 5 Library
https://github.com/aquirozsea/programming5Comet Cloud
Skills
Languages
Java, C++, SQL, JavaScript, HTML, XML
Frameworks
Hadoop
Paradigms
MapReduce, Distributed Programming, Agile Software Development
Libraries/APIs
Java RMI, jQuery
Platforms
Apache Pig, Amazon EC2, Linux, NetBeans, Amazon Web Services (AWS), Android
Storage
Apache Hive, NoSQL, JSON, HBase, Cassandra, PostgreSQL, MySQL
Other
Big Data, Machine Learning, Analytics, Development
Tools
IntelliJ IDEA, GitHub
Education
M.Sc./Ph.D. Degree in Computer Engineering
Rutgers University - New Jersey
B.Sc. Degree in Computer Engineering
Eafit University - Medellin, Colombia
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring