Costa Shapiro
is engineering software since the early 90's:
- Over a decade of development leadership experience
- The first owned and paid project while still in high school
- A total of 10 years of formal computer science education
- With the Internet and its whole stack of technologies since early days
- Business pragmatism and delivery orientation, and also, organisational flexibility
Selected Relevant Technologies
- Ruby world — my current general-purpose/business-logic language of choice — and everything around it
- Java world — the language of my Master work — and the gateway into the mighty
JVM with everything around it
- ECMAScript (aka JavaScript) world — the web scripting language(s) with everything around it
(from HTML5 APIs to bleeding-edge frameworks) —
which is also useful for some microservices
- SQL world — still the default
DBMS model/language — with its continually advancing technologies and tools
- NoSQL world — notably including search and pub/sub systems — good for optimising data access ad hoc
- Docker, Kubernetes and friends (SW production/deployment), Python and ML friends, Erlang and friends, Rust > Go, FFmpeg and friends
(A/V processing), various
RFCs-based technologies, Git and friends,
etc
Historically Relevant Technologies
- C/C++ world — Boost, Tuxedo, MFC,
OWL, VxWorks, Tornado, ACE,
Turbo Vision
- Backbone+Marionette (JS), Apache Cordova (PhoneGap), Web browser extensions
- bash, ksh, PHP, Perl, Tcl/Tk, Visual Basic,
Pascal, COBOL
- MS Access, Paradox/BDE, dBase, Clipper
- CORBA,
DCOM/ActiveX
- Various Apache Jakarta technologies, JavaCC
- Win32 userland, FreeBSD-based internet server setup, DOS
Studies
- 1999–2003
- Technion (CSD) – M.Sc. in Computer Science (cum laude)
- 1995–1998
- Technion (CSD) – B.A. in Computer Science (cum laude)
- 1991–1994
- BOSMAT (Automatic Data Processing course) – Speciality Matriculation Certificate
Jobs
- 2019–Present
- Software engineering consulting at costa works
- Self-server platform assembly, offering the complete whole-stack container-based personal "operating system" for rapid prototyping of classical centralised systems or next-gen peer-to-peer systems' deployment
- BDD and various system specification level expertise
- Technical leadership in ML-heavy backend architectures in start-up projects
- Open-source video production pipeline component implementation and integration
- Public speaking and private consulting on R&D processes and tools
- Data extraction, processing and presentation works
- – Docker, cloud resource providers (GCP, AWS etc); Python-based ML, Ruby-based management and administration; Rust-based high-performance binary processing optimisation; Golang-based system modules; Erlang-based high-throughput microservices; many more data management systems and protocols
- 2017–2019
- Server Team Leader / Chief Security Officer, and then, CTO at Owlytics Healthcare
- System back-end development & maintenance, including of large-data-volume analytical components
- Information security compliance planning & supervision
- Data ingestion / stream processing system architecture and execution
- Wearable sensor data ML research for healthcare
- Full data ingest+analysis+report production system ownership
- – Docker, Kubernetes and related technologies (on GCE, AWS); Ruby technologies for admin components, system tests, etc; Python technologies for data analysis; Apache technologies, such as Kafka and Lucene (Elastic stack); other NoSQL technologies, Elixir (Erlang VM)
- 2016–2016
- Core Developer at Peer5 (core product team)
- Web (client-side) video P2P delivery plug-in system maintenance
- Trying to stabilise and extend the niche product technology
- – Docker technologies, NodeJS, HTML5 APIs, web video players APIs
- 2015–2016
- Software Architect at Showbox (video processing and data management back-end system)
- video editing and delivery workflow back end ownership, video montage engine development
- – Ruby on Rails, FFmpeg and similar technologies, Redis, multi-process multi-service high-speed processing architecture
- 2011–2014
- Project Lead, Core Developer and Consultant at Astrails (various web/mobile app projects)
- technology expertise, architecture and interface design, wireframing, prototyping, requirements specification, production implementation, engineering support and management of web+mobile app projects
- – Ruby on Rails, Backbone+Marionette, NodeJS, RSpec, and a great deal of other contemporary client- and server- side technologies
- 2009–2010
- Senior Software Engineer at
RSA
(Verified by Visa / MasterCard SecureCode project, Herzliya)
- production and development maintenance of the technologically complicated SAAS product family
- – Java EE, C++/Boost/Tuxedo, ORACLE SQL, Python,
bash, ksh, Tcl/Tk & other scripting
- 2007–2009
- Senior Software Engineer at Nielsen Online (projects on interactive distributed systems for large-volume text-mining analysis, Herzliya)
- full ownership of the company's core Consumer-Generated Media analysis project
- solving stability, maintainance and performance issues on component and system levels
- – Java EE & Apache Jakarta technologies (notably incl. Lucene),
C++/Boost, SQL & custom DBMS's,
XML processing, standard & custom client-server transports,
bash & other scripting
- 2005–2007
- Technological Leader and Founder at a personal information management web service start-up project
- technology development (interface definitions, system architecture, algorithm and database design, etc)
- start-up company related activities
- – front-end web technologies, PHP5, Java EE & Apache Jakarta technologies, JDBC, PostgreSQL, FreeBSD, common internet server software
- 2002–2004
- Senior Software Engineer at Intel (pre-silicon VLSI power estimation tool project, integrated VLSI CAD system, CAD Dept., Haifa)
- VLSI technology domain experience (including system input/output specifications and real-data analysis)
- subsystem architecture development
- internal customer engineering support (VLSI projects)
- cross-project coordination and developemnt
- – C++, VLSI knowledge, internal infrastructure framework, Tcl/Tk, Perl
- 2000–2002
- Software / Integration Engineer at Qualcomm (several cellular communication related software-hardware projects, Haifa)
- CDMA technology domain experience (both parties plus simulation/testing)
- full-circle development of a hardware driver framework and applications
- development, maintenance and refactoring of a distributed testing/simulation infrastructure
- cell-phone system integration (including development of mid-layer embedded communication software)
- – RT/Embedded systems, VxWorks, Tornado, CORBA, Visual C++, ARM, proprietary DSP, hardware-level protocols (cPCI, flash memory, etc), Win32, Perl
- 1999–2000
- Software Developer (part-time) at Extent (former, acquired by Alepo) (Billing & Mgmt. RADIUS ISP web-managed server project, Ramat Gan)
- development of custom management and report software modules
- – cross-platform C++, SQL (various DBMS's), Apache HTTP server, proprietary front-end template framework
- 1998–1999
- Teaching Assistant at Technion (basic CS courses, CSD, CEESD, Haifa)
- 1997–1998
- Software Developer (part-time) at NetManage (former, acquired by Alepo) (several internet client projects, Haifa)
- common internet protocols experience (email, ftp, telnet, etc)
- client software module development (including GUI components)
- infrastructure works
- – Visual C++, MFC, DCOM/ActiveX, range of internet protocols, Win32, other application technologies
- 1995–1997
- Software Developer (part-time) at the the Technion's Asher Space Research Institute (TechSat microsatellite project, Haifa)
- design and implementation of complex physical algorithm modules
- implementation of telemetry-processing modules (including database design and usage
- implementation and integration hardware driver modules (GPS, etc)
- – C/C++, x86 assembly, Visual Basic, Paradox/BDE, various hardware interface protocols, Win32 (including GUI)
- 1992–1993
- Software Developer (part-time) at the Technion's Center for Promotion of Learning and Teaching (A project of robotic manipulator based educational aid for spatial reasoning development course, Haifa)
- design and implementation of robotic manipulator software (including GUI, command language, robot control and simulation)
- – Pascal, Turbo Vision, x86 assembly, proprietary robot interface protocol, DOS