Tomo Krajina, Developer in Poreč, Croatia
Tomo is available for hire
Hire Tomo

Tomo Krajina

Verified Expert  in Engineering

SMPP Developer

Location
Poreč, Croatia
Toptal Member Since
February 5, 2014

Tomo is a Java, Android, and Golang developer with 13+ years of experience. He has worked on Android, web, and back-end applications, telecommunications, and enterprise and banking systems. He is especially interested in all things GPS related.

Portfolio

SCIO
Firebase, Amazon DynamoDB, AWS Lambda, PHP, Android, Google Cloud, Python, Java...
Globio
Fintech, Go
Storie
Android, iOS, Google Cloud Platform (GCP), Java, Go

Experience

Availability

Part-time

Preferred Environment

Linux, Bash, Android Studio, IntelliJ IDEA, Git, Vim Text Editor

The most amazing...

...thing I've built is an open source library that is now used to track wild animals in Africa.

Work Experience

Owner

2015 - PRESENT
SCIO
  • Worked and maintained various open source projects.
  • Mantained several websites and their internal microservices.
  • Developed an Android application for language learning to help users learn new words by going through 10,000 sentences.
  • Created an Android application for numeric sequences and time tracking.
  • Developed a news aggregation Android application complete with back-end.
  • Integrated Android apps with Firebase and Google cloud back-ends.
  • Maintained Trackprofiler, the online GPS track editor.
Technologies: Firebase, Amazon DynamoDB, AWS Lambda, PHP, Android, Google Cloud, Python, Java, Go

Back-end Engineer

2017 - 2017
Globio
  • Developed the back-end in Golang.
  • Implemented various fintech APIs.
Technologies: Fintech, Go

Back-end Engineer

2015 - 2016
Storie
  • Implemented a back-end REST API hosted on Google Cloud.
  • Implemented video processing workflow.
  • Implemented a variant HLS video streaming solution.
  • Helped the development of iOS and Android applications.
  • Integrated REST APIs with mobile apps.
  • Integrated push notifications with mobile apps.
Technologies: Android, iOS, Google Cloud Platform (GCP), Java, Go

Senior Java Developer

2010 - 2015
Infobip
  • Developed enterprise SMS messaging systems.
  • Implemented various applications using the SMPP protocol.
  • Implemented the GSMA OneApi REST API.
  • Developed open-source client libraries for the OneAPI REST API.
  • Introduced the Git versioning system and worked on a specific Git workflow to be adopted.
  • Introduced Groovy scripting for several applications.
Technologies: Ruby, PHP, SMPP, Web Services, Apache Tomcat, Groovy, Python, Spring, Java

Senior Java Developer

2004 - 2010
Istarska kreditna banka (Istrian Credit Bank)
  • Implemented an internet banking back-end system.
  • Worked on several web applications for internal use.
  • Worked on an application for money laundering prevention.
  • Implemented a reporting system.
Technologies: AS400, Web Services, Apache Tomcat, Spring, Java

Lead Developer

2005 - 2009
Aqua d.o.o.
  • Implemented a bridge between an application for inventory management and the company's CMS (a WordPress plugin and a Java service).
  • Implemented a CMS and web shop.
Technologies: Java, PHP

Math and Informatics Teacher

2000 - 2004
Elementary School Poreč
  • Taught kids programming (mostly Python) and mathematics.
  • Mentored regional and state level competitions.
  • Lobbied for the use of open-source technologies in the educational system.
Technologies: Python

10,000 Sentences

https://play.google.com/store/apps/details?id=info.puzz.a10000sentences
10,000 sentences an Android app for language learning. It helps users learn new words in a foreign language. The idea is to go through 10,000 sentences in a target language. By exposing users to unknown words in a real context (a sentence) they learn new words.

Gpxpy

https://github.com/tkrajina/gpxpy
Gpxpy is a Python library for GPS/GPX tracks. It implements all the most common algorithms used to manipulate and analyze GPS track data.

GoLongFuncs

https://github.com/tkrajina/golongfuncs
A statical analysis tool to discover long and complex functions in Golang. The user decides which measures of complexity to use, for example: number of variables in scope, number of assignments, nested blocks, cyclomatic complexity, ceomplexity per line of code, etc.

Typescriptify Golang Structs

https://github.com/tkrajina/typescriptify-golang-structs
A helper tool and library to seamlessly use Golang models in Typescript.

Trackprofiler

http://www.trackprofiler.com/
Trackprofiler is an online GPS track editor intended for hikers, mountain bikers, and outdoor lovers. Users can upload their tracks, fix common GPS errors, split or join tracks, add elevation data, etc. Tracks can be uploaded via email or from Dropbox.

Git Introduction: Uvod u git

An introductory book about Git in Croatian.

GraphAnything

https://github.com/tkrajina/GraphAnything
GraphAnything is an Android application to help users visualize various number sequences. For example: tracking weight, running distance and speed, or time spent on a project. It can also be used as a pomodoro timer.

Go-reflector

https://github.com/tkrajina/go-reflector
Golang reflection simplified.

Ftmpl

https://github.com/tkrajina/ftmpl
Ftmpl is a fast, compiled, and typesafe templating language for Golang.

Geo Elevations: SRTM.py

https://github.com/tkrajina/srtm.py
A Python library for the Shuttle Radar Mission Data (SRTM) and the Earth Gravitational Model (EGM2008).
1993 - 1999

Bachelor's of Science Degree in Math

PMF - Zagreb

Libraries/APIs

Google Maps, Leaflet, jQuery, JasperReports, jQuery UI

Tools

Firebase Cloud Messaging (FCM), Android Studio, IntelliJ IDEA, Vim Text Editor, LaTeX, Shell, Apache Tomcat, Git

Languages

Go, Python, Java, Groovy, Bash, PHP, Ruby

Paradigms

Agile Software Development, Test-driven Development (TDD)

Platforms

Android, Google App Engine, Firebase, Linux, Google Cloud Platform (GCP), iOS, AWS Lambda, Heroku

Storage

Google Cloud, MySQL, Amazon S3 (AWS S3), Amazon DynamoDB, Memcached, IBM Db2, Microsoft SQL Server

Frameworks

Spring, Apache Struts 2, webapp2, React Native

Other

SMS, SMPP, Web Services, AS400, Fintech

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring