General

Personal Information

Name
Janne Enberg
Date of Birth
31st of January, 1985
Languages
Finnish (mother tongue), English (fluent in conversation and writing, including IT terminology)
Hobbies
Live streaming, hydroponics, photography, cosmology, theoretical physics, Arduinos, network security, operating systems, hardware diagnostics, server administration and programming

Summary

  • I am the rock solid professional for the times you need to get things done. Wide knowledge in everything IT, including managing teams. I am perfectly comfortable working with company management to fulfill business goals, while ensuring every team member has meaningful things to do, and that the team excels as a whole.
  • I also enjoy learning and doing the necessary things myself when there is a need for it. This has led me to have the ability to fill multiple roles in an organization, and to understand a wide variety of technologies. When necessary I can build the product from scratch, from installing the servers, to building the backend, frontend, and continuous delivery systems, as well as all the integrations and tools necessary to support operating it.
  • I enjoy mostly working at a free pace, where I don't need to worry about working hours or days, but focus on the results and getting things done. However, I have been in many stressful situations over the year and excel at times of urgent need. I can put the necessary time into solving any problem I'm facing, no matter how obscure and frustrating. When I get the time to think of a problem properly I can frequently come up with creative new suggestions on how to get the necessary results.
  • I take pride in my ability to choose the right tool for the job, deciding when a homegrown solution is needed and when a 3rd party solution is much more cost effective. I don't choose technologies just because I have a history with them, or because "everyone uses them", I choose technologies because they are perfect for the job.

Recent experience

  • Most recently I've been working heavily on Python and Go, with some JavaScript, TypeScript, and C# on the side. I'm also quite comfortable with Google Cloud Platform, Cordova (cross-platform mobile application framework), and continuous integration & delivery systems.
  • I'm most comfortable in small to medium-sized startups, where I like to take a large role and take lots of responsibility. I've been designing software for medium sized server environments with dozens of servers for years, ensuring cost-effective scalability and high availability, while keeping releases rock solid.
  • I have done everything from budgeting, government grant applications, managing product backlog, hiring talented team members, to building product prototypes. I am a big fan of Infrastructure as Code (IaC), and DevOps practices in general.

Technical skills

Programming etc. languages
Python, Go, Bash Shell, JavaScript (async + OOP, Node.js), TypeScript, C++ (OOP), Lua, HTML, CSS & LESS & SASS, SQL, and more
Operating systems
Linux (CentOS, Debian/Ubuntu, many more), FreeBSD, OpenBSD, Windows (not for server use)
DevOps tools
Jenkins, Travis CI, Vagrant, SaltStack, Fastlane, Chef, VMware (incl. ESXi), VirtualBox, Fabric, and of course custom tools
Server environments
Google Cloud Platform, Amazon Web Services, hardware configuration choosing for various needs, and system assembly when necessary
Data
MongoDB, MySQL/MariaDB, Cassandra, Riak, memcache, ElasticSearch, Sphinx, SOLR
Security
nmap, Nessus, AIDE, rkhunter, chkrootkit, snort, iptables, pf
Networking
OpenVPN, IPSec, tcpdump, Wireshark, TCP tuning
Other
New Relic, Nginx, Apache, varnish, Zabbix, Splunk, Git, Mercurial, SVN, and about a million other things

Employment History

Biddl (Co-founder, CTO and member of the Board of Directors)

Started June 2014 (Current)

At Biddl I designed the system architecture, and built the initial prototype for the whole system. After that I've continued to ensure the system architecture meets business needs and scales, while being affordable and effective.

I hired the engineering team to ensure that we have multiple people capable of performing every task, and so the team can be efficiently split to work on different things, rapidly reacting to changes in requirements.

Since then I've continued to drive the engineering team to deliver continuous improvements efficiently, prioritizing actual business needs. I've managed the backlog of tasks based on improvement ideas, ensuring all stakeholders know the priorities and when the changes are expected.

I've put heavy focus on automating tasks that otherwise would require manual work, thus optimizing the performance of both the engineering and operations teams of the company. Engineering spends less time on e.g. releases and manual testing, while operations can spend more time on planning for the future as tasks such as importing product data and handling of orders has been largely automated.

Pryte (DevOps Lead)

November 2013 - June 2014

At Pryte I took over managing the infrastructure (mostly AWS), continuous integration and delivery systems, and ensuring infrastructure security.

While writing Chef recipes for various purposes, I worked to improve the recipe collection, introducing testing and quality management tools (Vagrant, foodcritic) and taking into use common best practices.

I wrote lots of custom tools, e.g.:

  • Bootstrapping new servers
  • Launching complete staging environments on demand (AWS EC2)
  • Managing infrastructure-wide strict firewall automatically based on mix of a configuration file and automatic server detection via Chef searches
  • Automatic backups of critical servers
  • Doing server healthchecks
  • Collecting monitoring data with adapters to different systems (CopperEgg and Zabbix)
  • I also wrote the background task queue system responsible e.g. for signing APKs.

    I was also involved in designing system architecture and features.

    Unfortunately I didn't get to work longer on this fantastic team as the company was acquired by Facebook, and I did not want to join them.

Kiosked (Senior Software Engineer)

March 2013 - November 2013

At Kiosked I worked on a wide variety of things, some of them being:

  • The functionalities responsible for importing millions of products and then choosing the best matches to show for end users.
  • Implementing many improvements to the core systems and important tools for developers.
  • Profiling and optimizing the application core and servers, including implementation of custom tools for profiling and debugging.
  • Actively introducing new technologies to the system and developers.

I also was a part of the 24/7 on call team making sure the systems were up and running always.

Nord Software (Senior Software Engineer, earlier Software Engineer)

August 2007 - March 2013

Nord Software is a software consultancy where I was leading or supervising several development teams of varying size (up to 9 software engineers), often multiple teams simultaneously. I also actively participated in improving things in the company, ranging from employee happiness in general, to taking new technologies in use.

I participated in some way in most projects at Nord Software, sometimes just for quick technical consultancy in design or to resolve issues, sometimes leading them, sometimes I was simply a one-man project team.