Senior Java Developer and Architect
Kapsch Carrier Com Croatia
2004 - PRESENT
- Created an over-the-air configurator for delivery of configuration profiles to mobile handsets, such as ones for configuring GPRS/CSD connection, a WAP browser, e-mail settings, and more. Developed using Spring, Jakarta Turbine, Jakarta Velocity, and Torque. Worked in a team of two as project leader, architect, and developer.
- Created the web administration console for a message gateway server in a completely remote capacity. Communicated via the gateway’s management SOAP web service. Used the Jakarta Tapestry web framework for presentation and the Apache Axis library for SOAP communication.
- Upgraded a platform for mass SMS distribution. Provided complex hierarchical organization of entities and a statistical overview. Used Spring for the business layer, Jakarta Turbine for web, Torque as an O/R layer, and Quartz for scheduling.
- Created an MGW client library, a user-friendly layer built on top of ParlayX web service stubs, for sending and receiving SMS/MMS/WAP Push SI messages. Implemented it to be extensible for support of other types of binary messages. Developed a WBXML encoder for binary compression of XML messages, utilized for WAP Push SI message compression. Used the Apache Axis and JDOM libraries.
- Architected a number portability central database platform for a Croatian telecommunication agency. Provided support services (web portal and web services) for porting numbers between mobile and fixed operators. Utilized JBoss AS and Spring (business logic), Jakarta Tapestry (web), iText (PDF reporting), and Apache Axis (web services).
- Created a transaction server acting as a user-friendly gateway for prepaid/postpaid billing. Implemented on-request or subscription-based charging. Used the following frameworks: Apache Tapestry, Spring, Quartz, and plain JDBC/SQL as a persistence layer.
- Created a web console as well as some core platform functionality for managing various services related to roaming subscribers, such as service activation/deactivation, scheduled execution, and source data filtering. Worked in a team of two, mainly as a web developer with some involvement with the platform’s service layer. Used Apache Tapestry, Spring, Quartz, and plain JDBC/SQL as the persistence layer.
- Developed a platform for managing business processes for Value Added Services in Telco companies. Used Spring, Quartz, Hibernate, Tapestry.
Technologies: Java, Spring, Hibernate, Tapestry, Cassandra, Neo4j, Hadoop, Turbine, Velocity, Quartz, SOAP, Axis, ActiveMQ, RabbitMQ, MyBatis
2001 - 2004
- Created a chat system consisting of client applets and a Java server based on Jakarta Avalon technology. Integrated a virtual call center platform. Consisted of a Java 1.1 user applet for WAN usage and a Java 1.4+ applet for administrators inside the application's LAN.
- Created a firewall tunneling solution for Java using periodic HTTP POST requests to simulate constant socket connection. Wrote the client side consisting of a thin client library, usable on the Java 1.1+ platform. Wrote the server side implemented by Java Servlet technology. Utilized event-based (NIO) networking for high performance on the server side.
- Created a J2ME/MIDP client application for the unified messaging platform, communicating through the XML-RPC interface.
- Developed an auto-generator of a custom expression language manual from custom tags in source files.
- Handled load testing of a unified messaging platform using Jakarta JMeter with custom developed samplers. Simulated hundreds of simultaneous clients.
Technologies: Java, Applets, Apache Avalon, NIO, Servlets, J2ME, XML-RPC