Resume
Abdul Habra's Resume
BIOGRAPHY
Over twenty five years of IT experience with more than sixteen years of technical leadership.
Roles: Inventor, Conference Speaker, Mentor, Architect, Project Manager, Agile Technical lead, Designer, Analyst, and Programmer.
Technologies (Expert level): Web Technologies, Agile Development, Functional Programming, Object Orientation, Internet/Intranet, Client/Server, Distributed systems, RDBMS, Rule-Based/Metadata systems, Java/J2EE/JEE, JavaScript.
TECHNICAL EXPERIENCE
Platforms: OS X, Unix, and MS-Windows.
Software:
Java (21 Years), including: Maven, Ant, Spring, Hibernate, JPA, JMS, JEE, Junit, Selenium, Spark Java, and RESTful services.
JavaScript (12 Years): EcmaScript6/7, Webpack, Desktop & Mobile browsers, Server (Node.js, Phantom.js, Express.js). Single Page Apps (SPA), React, AngularJS, Web Components, jQuery, Jasmine, Mocha, MathJax.
Database: MongoDB, SQL, JDBC, ODBC, MS-SQL Server, DB2/UDB, MySQL, Oracle.
Internet: HTML5, HTTP, JSON, Ajax.
Languages: Elixir (1 Year), Scala (6 Month), Groovy/Grails (6 Month), Delphi (3 Years), C (5 Years), and C++ (3 Years), Ruby (6 Month).
Technologies:
Methods: Functional Programming (FP), Agile (XP) and Iterative. Scrum, Test Driven Development (TDD), Behavior Driven Development (BDD), OO A/D/P, UML, Design Patterns, SOA.
Distributed Systems: Multi-Tiered architectures, Client/Server, Internet/Intranet/e-Commerce applications.
Rule Based/Metadata engines analysis, design, and implementation.
Languages and Compiler analysis, design and implementation. Used Lex, Yacc, and Antlr.
PROFESSIONAL HISTORY
TD Ameritrade, Senior Consultant/Senior Manager, Ann Arbor MI, January 2015-current
Architect and Tech Lead For East Asia Systems
Enable account opening and trading for clients in East Asia. Support multiple locales and national regulations.
Mentor engineers to become better craftsmen/women. Introduced Git, TDD, CI/CD, micro services.
Technologies used: Java 8, Spring, maven, AngularJS, micro services, Pivotal Cloud Foundry (PCF).
Architect and Tech Lead For Robo Advisor Team
Enable casual investors to invest based on their preferences like risk tolerance, length of investment, ...
Upgraded system to use simpler architecture and less code. This saved on cost of upgrades and maintenance.
Technologies used: Java 8, Spring, AngularJS, React, Selenium, CypressJs, Webpack, Git.
Senior Researcher in the Advanced Technology Group:
Created a system for multi-factor authentication using biometrics.
Created a system for high speed multi-client messaging.
Created a system for real-time monitoring of social networking. Used NLP and Sentiment analysis for early detection of TDA systems issues.
Created an intelligent system for human-machine vocal interaction: somewhat similar to Alexa or Siri but with better financial capabilities. A US patent #10,217,260 was issued for some of my work.
Technologies used: Java, JavaScript, Elixir, Tomcat, Spark Java, HTML5, Speech I/O, Node, Spring, RabbitMQ, Lucene, Stanford NLP (Natural Language Processing), Apache NLP, Neural Networks/Deep Learning, MongoDB, Amazon Web Services (AWS).
Pillar Technologies, Independent Contractor, Cincinnati, Ohio, January 2008-January 2015
Tech Lead at a Book/eBook Publisher:
Created systems which allowed instructors to grade students and view their grades (Gradebook).
Created systems which allowed students, instructors, and researchers to read and review books online.
Applied TDD, Scrum, and high test coverage.
Technologies used, SPA, JavaScript, Angular, Grunt, Jasmine, Java, RESTful services, MongoDB, Jenkines, OSGi, Karaf/Aetos, ActiveMQ.
Tech Lead at a Food Distributor:
Created systems which allowed managing inventories and lists for customers.
System allowed users to customize their inventory levels and thresholds, create comparative pricing and quotes.
Applied TDD, 2-weeks iterations, Scrum, and 90% + test coverage.
Technologies include: Spring, JPA, Struts-2, JUnit, Yahoo YUI, and JQuery.
Tech Lead for Measuring Business Integrity Index at a startup:
Created a system that captures market and financial data about a company to calculate an Integrity Index, this index can be used to predict future trends for that company.
Applied TDD, daily iterations, and continuous deployment to build the system.
Technologies include: Scala for back end work, Groovy/Grails and JQuery for front end.
Tech Lead for an Automatic Characterization Test Generation at an Insurance Company:
Created a system which generates characterization test (e.g. JUnit) cases for Java legacy systems.
The system records programís behavior at run time, and generates test cases based on recorded values.
The system helps bootstrapping the creation of test cases for legacy systems without test coverage.
Apply TDD and Speed-To-Value (S2V) in system design and implementation.
Technologies include: AspectJ, JBoss AOP, JUnit, EasyMock, JMock, Service Provider Interface (SPI), and Reflection API.
JEE Architecture and Team Lead at a Services Company:
Fine tune application performance and database operations.
Apply TDD and Speed-To-Value (S2V) in system design and implementation.
Introduced new ideas in inter-system interactions that saved more than 50% in effort and budget.
Created applications that monitor systems health.
Technologies include: Spring, Hibernate, JUint, Quartz, Spring MVC, FindBug, Ant, and Oracle DB.
Several Organizations, Ohio, 1990-2008
Companies: Cardinal Solutions, Fusion Alliance, Relizon, Sogeti/Cap Gemini, Wright State University.
Technologies included: Java, J2EE, EAI, Rule Engines, Oracle DB, WebLogic, WebSphere, WebMethods, Neural Networks, Delphi, C, C++, VB, Modula-2, Assembler.
EDUCATION / CERTIFICATION
Sun Certified Programmer for the Java 2 Platform, 1999.
M.S. in Computer Engineering. 1994. Wright State University, Dayton, OH
B.S. in Computer Engineering. 1988. King Saud University, Riyadh, Saudi Arabia.
COMMUNITY / SOCIAL
tek271.com, github.com/ahabra, twitter.com/ahabra, ahabra.tumblr.com
CodeMash 2015 Conference presentations. EcmaScript 6 Now, and Elixir For The Impatient.
Craftsman Guild presentation. Intro to Elixir language: www.meetup.com/Craftsman-Guild/events/127637602/
Great Lakes Functional Programming Conference 2012. Functional Programming With Javascript: www.github.com/ahabra/fpjs
International Conference on Collaboration Technologies and Systems. Technical administrator since 2007. http://cts2016.cisedu.info Usually held in cooperation with IEEE and ACM.
International Conference on High Performance Computing & Simulation. Technical administrator since 2007. http://hpcs2019.cisedu.info Usually held in cooperation with IEEE and ACM.