My Tech Wishlist
Tags: career, job
Published: 2018-04-16 19:55:56

---
title: My Tech Wishlist
published: true
description: Here is a list of technologies I would love to work with in my next job
tags: 
 - career
 - job
canonical_url: https://www.sbisinger.ch/2018/04/16/my-tech-wishlist/
---

Due to [some big changes](https://www.coop.ch/de/ueber-uns/medien/medienmitteilungen/2018/coop-uebernimmt-swisscom-anteile-an-siroop.html) involving the company I'm currently working at, I will soon move on to a new challenge.

But what are the challenges I'd like to work on in the next months?
Here is *my list* with things that excite me and things that don't.

## Job Utopia?

Finding a job that would match all the following criteria is impossible. As
with any wishlist, this is just a listing of what currently interests me: some
things are negotiable, some are not. The objective is to collect my thoughts in
one place, so that I have a reference to compare potential job offers with. It
can also help potential employers understand more what kind of person I am.

## Company values

One of the most important points for me when looking for a new job is to verify the company values.

### Must haves

* **A clear purpose**: I recently read [Start with
  Why](https://www.goodreads.com/book/show/7108725-start-with-why) from Simon
  Sinek and it struck me for its simplicity. A company should be able to answer
  to a very simple question: *Why should it exist?*
* **A positive impact**: *Choose a job you love, and you will never have to
  work a day in your life*. If what you do improves people's lives, I'd love to
  hear from you.
* **Good working conditions**: This means european levels of social benefits
  and working conditions that help taking care of a family. A successful
  company should know better ways to track productivity than using a clock.
  Quality over quantity!
* **Influence**: I am enthusiastic and opinionated; I love challenges and I
  want my work to be impactful. I want the company I work for to be successful,
  but to do that I must be able to influence it.

## Architecture

After 15 years spent in web development, I long for bigger challenges. Making an application perform and scaling it to handle big volumes of traffic is not an easy feat!

* **Kubernetes**: Containerization has changed the way we deploy our software,
  but other things haven't changed: vendor lock-ins versus free software.
  Platforms like AWS are amazing, but I always ask myself if it's wise to be
  locked to a specific platform. Kubernetes allows you to choose from a wide
  array of hosting options, and you still have the door open to migrate
  somewhere else if you ever need to.
* **Data streaming**: I've worked with DynamoDB and Lambdas to process data in
  streams, but I found the artificial limitations really bothersome. I want to
  go a step forward and explore other options like [Apache
  Kafka](https://kafka.apache.org/), [Apache Flink](https://flink.apache.org/)
  or others.

## Programming languages

Over my career I've worked with a plethora of different programming languages and while all can accomplish great things I obviously have my preferences. There are interesting newcomers on the scene and I'd love to try out some of them!

### Would love to use

* **Elixir/Erlang, Elm, Clojure, Haskell, Scala**: Functional programming is
  very hot right now and I find very interesting how some of the concepts
  helped to solve modern problems (I'm looking at you, state management!). I'd
  love to work professionally with one of those, also to explore their
  shortcomings and *become a better programmer* in the process.
* **Rust, Go**: Those are relatively new kids on the block! Using modern
  programming languages to write (relatively) low-level programs must be fun,
  right?
* **Python, Ruby**: The old reliables. Yes, I've worked with them already, and
  yes, they still excite me! I know their limitations, but I also know how to
  overcome them when necessary.

### Not so eager

* **Java**: I find Java extremely boring. I think Java might be the main
  reason I'm not a fan of statically typed languages! I mean to this day you
  need XML (yuck!) and an IDE to generate code for you if you want to keep
  your sanity. Its love for abstractions really clashes with my minimalist
  approach.
* **C#**: Although I've never been a fan of Microsoft, I must admit that in
  the last years they changed their approach completely. Nonetheless, C# is
  still very close to Java and I'm not sold on developing on Windows. The
  vendor lock-in concern is still present with the .NET platform. Maybe I
  could be swayed with F#, if the project is really interesting.
* **PHP**: I've started my career with ASP and PHP, I've worked numerous
  times with PHP and... I can't take it anymore! It just doesn't excite me at
  all, it is bothersome for me to write (why `->` instead of `.`??) and I
  think the type hinting is actually making the language worse! If I see PHP
  on a job ad it is very likely to be a deal breaker for me.

## Final thoughts

Quite a list, isn't it? If you are a fellow developer, what is your list of dream requisites for a new job?  Let me know in the comments!

Are you on the lookout for developers? Do you think I would be a good match for your team, either remotely or in Zurich? Then [get in touch](mailto:stephane.bisinger@protonmail.com)!