| Sergey Mikhanov | |
|
The most recent project I work on at Kapsch is the high-performance Java framework for telecom services and suite of services built on top of it. I have developed the framework architecture and have overseen the development process in the team. This framework now serves millions of subscribers at our biggest customer, and the services implemented vary from mobile prepaid solutions to fully-fledged mobile VPN — all written in Java. There are several things in this framework I am proud of as an engineer. It contains a robust asynchronous database layer built with JDBC and we were able to significantly reduce requests processing latency because of it. It runs on top of JAIN SLEE application server and gently hides the event-driven nature of this architecture from the service developer without forcing him to deal with the “callbacks hell”. It manages its memory consumption in a very efficient manner thanks to approaches from functional programming like ubiquitous immutability. In parallel with developing this product I have consulted several integrators and mobile operators in different countries across the Europe including Switzerland, Spain, Hungary and Croatia. I have facilitated developer trainings in a number of companies including Atos Origin (there is a recommendation I have received after that.) While working in protocols team in jNetX I have participated in the development of the company’s flagship product, N(x). My main focus was on the high-performance protocol endpoints for some of the N(x)’s resource adaptors. Working at jNetX showed a stark contrast with the typical Java development: instead of throwing together pieces of code in the application server, I have been developing the application server. Multithreading, UDP and TCP sockets, high-performance I/O with Java NIO, backed by the necessity to use some non-trivial algorithms (how about a B-tree?) were an interesting ride. Before jNetX I did enterprise development. Among other things, I was responsible for very early versions of E-Style Mortgage (now known as eSTYLE Prequal Engine), a web-based workflow tool for the mortgage borrower prequalification. I think that, contrary to popular belief, enterprise development may be interesting if developer is fully responsible for the end product. Luckily, with the projects at that time this indeed was the case for me. I have a number of side projects, too. As a hobbyst, I am currently passionate about advanced mobile platforms like iPhone and modern functional languages like Haskell. I have developed a suite of iPhone applications branded under the name Swoolt; go check them out! Previously Swoolt was the name of now defunct iPhone travel guide I wrote in January 2009. I also work on the protocols framework in Haskell inspired by Twisted, Grizzly, and Apache MINA but the results are too early to be shown to general public. |
|
| Entries (RSS) | © 2007–2010 Sergey Mikhanov | |
|
|