

Diego Castorina
Verified Expert in Engineering
Multithreading Developer
Originally from Italy, Diego spent several years working in The Netherlands before moving to Prague, in the Czech Republic. There he has been working as a senior freelance engineer in addition to working on his own company: a web-based CRM for small businesses.
Portfolio
Experience
Availability
Preferred Environment
Git, Subversion (SVN), Eclipse, Ubuntu
The most amazing...
...project I have worked on was the implementation of a subset of the SIMPLE protocol based on official documents written by the IETF.
Work Experience
Co-founder
Sirecta
- Built a web-based CRM for small and medium businesses.
- Conducted business analysis: studied how CRM's enhance the sales process and how they are used.
- Fully implemented the front-end using AngularJS, Twitter Bootstrap, and Yeoman.
- Fully implemented the back-end using the Play Framework for Scala and persisting data on MongoDB.
- Responsible for system administration on Linode VPS.
Software Engineer
Flow Traders
- Took full charge of the project's life-cycle by directly discussing requirements and scope with the client represented by traders, mid-office, and risk office.
- Maintained legacy systems implemented using various technologies varying from Bash scripting to database stored-procedures, Perl scripts, Swing, and J2EE applications.
- Introduced the usage of REST services in the company to facilitate the integration of different systems which are not involved in low-latency operations.
- Responsible for the decision about which technology to use in order to standardize the development tools within the company.
- Worked on real-time, multithreaded, distributed systems running in Amsterdam, New York, and Singapore.
- Involved mostly in applications dealing with clearing and risk data which generate reports about intraday and end of day positions, reconciliation, limits and compliancy.
- Was remote technical mentor for developers in the office in Cluj-Napoca, Romania.
- Worked remotely for the office in Amsterdam for 8 months from Italy.
Web & Java Developer
Func
- Took care of the design and implementation of web applications for Dutch Educational institutions like Kennisnet, Malmberg, and Thieme Meulenhoff.
- Used Agile Methodologies like Scrum and Test Driven Development.
- Implemented load tests with the relative profiling and memory usage analysis.
- Introduced the usage of the JMS technology to replace the old unstable setup.
- Implemented an e-learning portal consisting of two web-applications. One for content providers and the other for students
Web & Java Developer
Quince
- Maintained and implemented new functionalities for several projects for clients like Samsung, Goodyear, and Tita Tovenaar.
- Worked in a multi-disciplinary environment including a design, a copyright, and an events department.
- Single handedly re-implemented in 3 months a tracking system for Samsung previously implemented by 4 people over a 6 months period. Apart from fixing all bugs, the generation of reports was sped up from 20 minutes to 30 seconds.
- Introduced the usage of the Grails framework within the company in order to accelerate development productivity.
- Implemented T-SQL stored procedures for the generation of reports involving millions of records.
Java Developer
Italtel
- Worked on the Presence Service Enabler based on SIMPLE (SIP for Instant Messaging and Presence Leverage Extensions).
- Implemented standards defined in RFC by the Internet Engineering Task Force, the same that defines TCP/IP, UDP, SNMP and many others.
- Introduced the usage of the Spring Framework within the project and mentored the rest of the team about how to use it.
- Implemented a library for the a real-time configuration, administration, and monitoring the distributed systems running on Bea Weblogic AS.
- Implemented a web application for creating and configuring the profiles of the users of the systems.
Java Developer
Dok Solutions
- Single-handedly implemented IP Tetra, a system for making audio and video calls between two or more people.
- Implemented server side running on Bea Weblogic and based on SIP Servlets.
- Implemented Java Desktop client using Swing, the Java Media Framework, and JAIN SIP API.
- Implemented PDA Client running on IBM j9 JVM.
- Implemented a JNI library wrapping a C library to make calls from mobile devices.
Experience
OmniContacts
https://github.com/Diego81/omnicontactsWork With Play
A Developer Life
The Scala Jobs Board
Skills
Languages
Java, JavaScript, Ruby, Scala, SQL, C, Groovy
Frameworks
Play Framework, Ruby on Rails (RoR), AngularJS, Apache Wicket, Spring MVC, Spring, Hibernate, Swing, JNI, JavaServer Faces, Grails, Apache Struts, Apache CXF, Jasmine, Apache Struts 2
Paradigms
Distributed Programming, Dependency Injection, Object-oriented Design (OOD), Functional Programming, Asynchronous Programming, JavaScript MV* Framework, Scrum
Other
Multithreading, Data Analysis, SIP, BEA WebLogic Server, Prototyping, EJB3
Libraries/APIs
Backbone.js, JMS, jQuery, Apache Lucene, JDBC, JMX, Quartz, Mustache
Tools
Subversion (SVN), Git, Eclipse IDE, ActiveMQ
Platforms
Linux, Ubuntu, Eclipse
Storage
MongoDB, MySQL
Education
Computer Science Degree in Computer Science
University of Catania - Catania, Italy