Jurij Smrke

is my name.

I live in Ljubljana. I have 4 years of experience with web development and 10+ editing and creating media.

I've built search aggregators, research tools for academics and journalist, web applications, APIs, festival websites; done migrations, optimizations, design from scratch, system administration (linux) etc.

I am at my best working with python. But since web technologies are in constant motion, I stay familiar with a wide range of tools.

python, flask, elasticsearch, sql (postgresql, mysql, sqlite), js/jquery, html/css/scss, vue.js, angular.js, babylon.js, docker, aws, openrefine, processing

And while technologies come and go and stacks change, the tasks a developer faces remain the same: assess requirements, choose the appropriate design pattern, understand the/client and the end user, write clean reusable and debuggable code, solve problems efficiently, design storage optimally, identify/remove bottlenecks, communicate patiently and concisely, take ethical/political challenges seriously etc.

I am generally curious but particularly interested in working on projects which look to address social, organizational, political or artistic issues.

Move fast. Don't break things. Open source them.

I have a good track record of working with designers. We've won awards together. Most notably The Grand Prix at the 5th Brumen Biennal.

My educational background is in journalism and media studies. I wrote an MA dissertation on the history of dashboards and live data visualization (Goldsmiths College) and a PhD on the political aspects of valuation via metrics (Coventry University, pending completion).

What is a full stack developer?

"A person who can develop both client and server software" [1].

The advantages of being a full stack web developer per W3C:

  • you can master all the techniques involved in a development project,
  • you can make a prototype very rapidly,
  • you can provide help to all the team members,
  • you can reduce the cost of the project,
  • you can reduce the time used for team communication
  • you can switch between front and back end development based on requirements,
  • you can better understand all aspects of new and upcoming technologies.