Im a creative engineer with a diverse set of skills including software architecture, as well as very strong executive skills. I have a proven track record of designing, planning and delivering highly reliable software solutions involving teams of up to 15 engineers. My passion is creating complex and highly automated, yet low maintenance software products or tools with beautiful, yet intuitive user interfaces. I lead fiercely and fearlessly with a clear vision for the end product.
Sr Software Engineer @ Full-stack design and implementation of tools for ETL and workflow management of the analytic Data Warehouse resources.
- Workflow management
- Replication tools
- Web portal
- Unit and integration testing
- Hadoop Spark ETL tools
Python, NodeJS, Javascript, Java, Sass, React, jQuery, D3, Flask, S3, Kafka, Hadoop, Oozie, Spark, Sketch, HTML, CSS, Jinja, NPM, Bower, Gulp, Make, Ansible, Bootstrap, REST, Thrift, etc From March 2015 to Present (10 months) Data Engineer @ Supported the following projects by creating and maintaining ETL pipelines, Tableau and in-house dashboards:
- Lift study analysis
- Reach and Frequency
- Ads Integrity
Python, Xhp, Javascript, HQL, React From June 2014 to March 2015 (10 months) Sr Software Engineer, Data Warehouse Specialist (prior Scientific Programmer) @ Part of a small team of programmers, designed and implemented XDMoD (open source), a data analytics and business intelligence framework for monitoring clusters, grid and cloud resources. It measures and visualizes the utilization, performance, and to a lesser extent the scientific impact of high-end cyber-infrastructure, from the convenience of a web portal, backed by a RESTful data access layer.
We developed XDMoD as a web application using ExtJS 3 as it provided our team with an awesome set of UI components. I designed an API to generate the charts on the server side. However, as web technologies evolved and more standardized, we switched to client side charting using HighCharts and D3, allowing for a more engaging interaction experience.
I designed and implemented our data warehouse, as well as its ETL and OLAP API, using JavaScript, Php and SQL. It periodically ingests and aggregates data from multiple sources into a data warehouse using a star-flake model implemented in MySQL.
I developed a set of tools that benchmark the query performance of various column and row based database technologies for purposes of ETL and OLAP. The systems tested include MonetDB, InfiniDB, Infobright, MySQL(MyISAM), Oracle, TokuDB, Vertica, Postgres, and SciDB. From June 2010 to May 2014 (4 years) Programmer/Analyst (prior Jr Programmer/Analyst) @ Lead developer in charge of LDMS – a laboratory data management system for the Windows OS. Database migration to Oracle, schema/query optimization, audit trail API re-design , UI design, bug hunting, installer development, and training of core/support staff to use new in-house database tools.
LDMS was a large Laboratory Information Management (LIM) system with components written in C, C++, and C# .NET. This system dealt with assay setup & results, specimen logging/shipping/tracking and exporting data to a central database (Ingres).
At first, I learned the source code by diving straight in and knocking out a few hundred bugs and long-lingering trouble tickets. Then, I developed a few new modules for LDMS and overhauled a large number of its UI components in terms of look and feel, as well as interaction and validation of user input. It wasn't long before I was leading the migration of the code base from Borland 5 to Visual Studio to be able to take advantage of latest compiler and IDE features.
I was then promoted to lead developer in charge of migration to the Oracle DBMS. I reproduced the LIM System’s underlying Paradox database structure in Oracle, then re-implemented the data access layer to use OCCI (Oracle C++ Call Interface), and replaced the old audit trail API with triggers implemented in PL/SQL.
Later, I developed an automated installation package (using InstallShield) for upgrading the hundreds of laboratories already using LDMS. This process automatically converted and verified the data from Corel Paradox to Oracle 11g.
I was responsible to assigning work to 3 or more programmers, and on a daily basis assisted user support with real-time remote troubleshooting of LDMS. I also trained core staff (user support, and data managers) to use and support the software with the new Oracle database. From October 2007 to April 2010 (2 years 7 months) Research Project Assistant @ Design and implementation of distributed collaborative 3D visualization environments:
SnB VIS: Shake-and-Bake Visualizer – collaborative 3D viewer and editor for protein structures in PDB (Protein Data Bank) as well as the SnB format.
Grid Mace – for viewing and interacting with charts and graphs in a 3D virtual environment, with avatars and chatting. From May 2004 to May 2008 (4 years 1 month) Buffalo/Niagara, New York AreaTeaching Assistant @ CSE116: Introduction to Computer Science II (Java) – Taught the weekly recitation sections for this large freshman course, substituted for the professor on a few occasions during lecture hours, held regular office hours and assisted the professor in administering and grading projects and examinations.
CSE421/521: Operating Systems (C/C++) – Taught multiple weekly recitations for this senior/graduate level operating systems course. Held regular office hours and assisted in administering and grading projects and examinations. From September 2003 to May 2004 (9 months) Buffalo/Niagara, New York AreaJunior Software Engineer @ Designed and implementated an augmentative communication device for the speech impaired, with limited motor skills (due to stroke, etc).
Research included text to speech voice synthesis, database query optimization, preference queries, ranking functions, and user interface design. API: Core Java, Swing, Java Speech, JDBC (MySQL) OS: Multiplatform From August 2002 to May 2003 (10 months) Buffalo/Niagara, New York Area
MS, Computer Science, 3.8 @ SUNY at Buffalo From 2003 to 2005 BS, Computer Science, 3.94 @ SUNY at Buffalo From 2000 to 2003 Amin Ghadersohi is skilled in: Data Analytics, Data Visualization, Java, Databases, MySQL, Software Development, JavaScript, PHP, Programming, SQL, Distributed Systems, User Interface Design, C++, Web Applications, Database Design
Websites:
https://xdmod.ccr.buffalo.edu/,
http://ccr.buffalo.edu/people/staff/ghadersohi.html