Tomo Ferega
Verified Expert in Engineering
Software Developer
With over nine years of experience in software development, Tomo is a seasoned and capable software engineer and solution architect with an excellent track record of delivering high-quality solutions. He has worked with a variety of technologies ranging from front-end to back-end, and he specializes in server programming mostly with Scala and Java. He is particularly interested in concurrent and distributed fault-tolerant software.
Portfolio
Experience
Availability
Preferred Environment
Git, IntelliJ IDEA, Linux
The most amazing...
...thing I've made is a streaming data transfer pipeline for streams on a master-slave topology with protections against hanging streams and minimal resource use.
Work Experience
Senior Full-stack Developer
EveryonePrint A/S
- Implemented a streaming data transfer pipeline for arbitrary streams between servers and clients on a master-slave topology with strong protections against hanging streams and minimal resource usage (avoiding buffering in case of large files).
- Created a service for monitoring and managing a POP3, IMAP, or Exchange email server inbox, monitoring for incoming mail, downloading, and parsing it.
- Implemented pages for all features requiring front-end changes in Wicket, including several custom widgets.
- Created services for log file transfer, event logging, document conversion, and a templating engine.
Senior Full-stack Developer
Kamino
- Designed and implemented the relational database model in PostgreSQL along with an Akka HTTP CRUD/REST service.
- Helped with an implementation of the data-series database in Cassandra.
- Worked on UI using TypeScript with Vue.js, including implementing a variety of chart components using D3.js.
- Optimized chart rendering and display performance.
- Created an alerting service integrated with several distribution channels, including Slack, Skype, and email.
Lead Developer
Mentat Labs d.o.o.
- Co-created and served as technical lead and full-stack developer for a Sweden-based startup in the financial sector with a responsive single-page web application for a flagship product.
- Using Java, Akka, and Selenate, built a high-throughput concurrent and distributed system for automating placing orders and other common actions on a major online retailer.
Lead Developer
Element d.o.o.
- Created Selenate, a mini framework built on top of Selenium, to facilitate the process of gathering data from public websites.
- Worked as project lead on a team of three programmers creating a large multi-national financial and credit analysis service.
- Managed the production environment for several mission-critical products.
- Wrote a S/MIME connectivity module in Scala using BouncyCastle (encryption/decryption and signing/verification).
- Created a full implementation of RNIF messaging protocol in Scala.
Developer
Element d.o.o.
- Designed and wrote the database for the new website of a medium-sized publishing company.
- Created a system for extracting problems from a math textbook and cataloguing, rendering, and displaying them on the publisher's web page.
- Wrote an automated identity verification service using SSN numbers.
- Worked as part of a small team in the development of a number of websites.
- Started working with Scala and functional programming.
- Worked with a small team on all aspects of the development process of a large multi-national financial and credit analysis service.
- Worked extensively with Selenium in a non-testing environment, including automated information gathering from public websites.
Experience
Procedural Terrain Generation Tool
https://github.com/tferega/terra-genProcess Runner
https://github.com/tferega/process-runnerSelenate
https://github.com/tferega/selenateScala SSL Disabler
https://github.com/tferega/scala-ssl-disabler/tree/master/scala-ssl-disablerSkills
Languages
Java, Scala, C#, JavaScript, TypeScript, PHP, C
Frameworks
Selenium, Akka, Lift, JUnit, Apache Wicket
Tools
Eclipse IDE, IntelliJ IDEA, Git, CasperJS
Paradigms
Functional Programming, Concurrent Programming, Procedural Programming, Test-driven Development (TDD)
Platforms
Linux, Windows
Other
Logback
Libraries/APIs
BouncyCastle, Vue, D3.js, JavaMail, jQuery
Storage
Cassandra, PostgreSQL
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring