112 lines
4.9 KiB
Markdown
112 lines
4.9 KiB
Markdown
# Vladan Popovic
|
||
## Senior software and systems engineer
|
||
|
||
\pagenumbering{gobble}
|
||
|
||
"Bulevar Oslobodjenja" 150/51, 11042 Belgrade, Serbia
|
||
|
||
Tel : +381621436099
|
||
|
||
E-mail: vladanovic@gmail.com
|
||
\
|
||
|
||
## Profile
|
||
|
||
Veteran software developer and systems engineer experienced in multiple fields
|
||
with a shy of 20 years professional experience. FOSS enthusiast, honorary
|
||
member of Macedonia's Free Software NGO and Belgrade's first hackerspace.
|
||
Designed and implemented distributed and monolith systems in the cloud, on-site
|
||
and in hybrid infrastructures. Keen on refactoring for the greater good. A long
|
||
time GNU/Linux user of many flavors, currently endeavoring to use Fedora
|
||
CoreOS, or any other [**OSTree based
|
||
distro**](https://gitea.vp.mk/vladan/workstation-ostree-config) in a production
|
||
environment. My
|
||
[**Linked-In**](https://www.linkedin.com/in/vladan-popovic-957ab733),
|
||
[**GitHub**](https://github.com/vladan>) and [**my selfhosted Gitea
|
||
server**](https://gitea.vp.mk/vladan) may provide more info if needed.
|
||
|
||
### Skills and toolset
|
||
|
||
Python is the language and ecosystem I have the most experience with. I've done
|
||
a lot of web apps in Django, Flask, FastAPI and make heavy use of SqlAlchemy.
|
||
Nowdays I use AsyncIO for async programming, but used gevent a lot in the past
|
||
as well. I'm obliged to say I've got to use most of uWSGI's features and love
|
||
it for its robustness, richness, large set of configuration options and
|
||
wonderful documentation.
|
||
|
||
Huge fan of PostgreSQL with some NoSQL experience in Apache CouchDB. I have
|
||
fair experience with Apache Kafka, RabbitMQ, MQTT, ZMQ, gRPC for message
|
||
distribution and make use of Protobuf and Cap'n Proto for packing data before
|
||
sending it through the wire.
|
||
|
||
Professionaly I used to manage infrastructure on AWS, GCP, OpenStack and
|
||
employed Ansible on multiple projects. Docker was a thing I've used a lot in
|
||
the past, but switched to Podman due to its daemon-less, free nature (as in
|
||
freedom) and its kubernetes compatability.
|
||
|
||
### Hobbies and Languages
|
||
|
||
I spend most of my free time writing Rust, from [**lock-free
|
||
queues**](https://github.com/filipdulic/bus-queue) to [**web applications in
|
||
WebAssembly**](https://git.vp.mk/ui) (must also mention that Elm provided me
|
||
with one of the greatest hoby-programming experiences ever). Recently I've been
|
||
busy with an [**embedded application in Rust for tracking
|
||
e-bikes**](https://gitea.vp.mk/e-bike-tracker) on an esp32 with a sim module.
|
||
|
||
I'm an avid table tennis player, frequent hiker (~100k steps/week), pizza and
|
||
bread baker and an ordinary everyday cook. I also enjoy playing video games,
|
||
mostly football when in good company.
|
||
|
||
Macedonian is my native language. I speak English and Serbian fluently and have
|
||
a fair German knowledge with a C2 degree in 2001.
|
||
|
||
## Work Experience
|
||
\
|
||
|
||
#### [Aiven](https://aiven.io/) (2021-2022) - Site Reliability Engineer
|
||
\
|
||
SRE in a dynamic multicloud setup consisting of tens of tousands of nodes,
|
||
offering managed Postgres, Kafka, Clickhouse, Mysql, Elastic/Opensearch, etc.
|
||
|
||
#### Sigma Technology (2019-2021) - Senior Engineer
|
||
\
|
||
Consultant in Ericsson LabOps team in Linköping - Sweden. Worked on automating
|
||
the infrastructure procurement for the R&D department in Ericssons own private
|
||
cloud management solution running on-site. My responsibilities included
|
||
implementing best practices by setting up automations, reviewing most of the
|
||
code in Gerrit and maintaining a Jenkins CI/CD pipeline (code-test-deploy
|
||
automation).
|
||
|
||
#### Seavus - Senior Engineer (2018-2019)
|
||
\
|
||
Responsible for maintaining a big data pipeline for Sunrise, a Swiss Telecom
|
||
provider. Based on the Hortonworks appliance (Ambari, Spark, Kafka, HDFS,
|
||
Hive) with the code written purely in Scala.
|
||
|
||
#### TradeCore - Python Lead (2017-2018)
|
||
\
|
||
Reduced the technical debt by refactoring, planning and discovering bottlenecks
|
||
and bad/redundant implementations. Improved the development flow, enforced a
|
||
stronger code review practice and python coding standards for the main product
|
||
written in Django, which also utilized PostgreSQL, ElasticSearch, Celerry, etc.
|
||
Introduced a solid CI/CD infrastructure by automating the Selenium tests and
|
||
frontend packaging for ~25 environments, GitLab Review Apps, etc.
|
||
|
||
#### Itekako - Software Engineer / Python Lead (2012-2013, 2014-2017)
|
||
\
|
||
Designed a scalable cloud solution and built a complete platform for home
|
||
security cameras with Python, JSON-RPC with TinyRPC, gevent, Protobuf, FFMpeg,
|
||
uWSGI and Live555, hosted on AWS. Reduced a couple of clients’ development and
|
||
deployment overhead by dockerizing their complete infrastructures. Created a
|
||
machine-generated-content service by implementing a ranking algorithm in
|
||
PostgreSQL and optimized critical DB queries.
|
||
|
||
#### RedHat - Software Engineer - OpenStack (2013-2014)
|
||
\
|
||
Development and RPM packaging on OpenStack Nova. Tested, debugged and deployed
|
||
various OpenStack scenarios and use cases.
|
||
|
||
#### Asseko - Software Developer (2010-2012)
|
||
\
|
||
Part of a new team working on a complete rewrite of a legacy proprietary
|
||
Banking Software to C# and MSSQL.
|