Time Complexity : TapeEquilibrium

Challenge

Attempt 1 (first solution that came to mind)

Ok, I know it would have a pretty bad runtime on larger sets, but it took me just a few minutes to come up with and time is money, so I submitted it…

Result: 100% Correctness, 33% Performance because my solution failed on bigger datasets… and because the complexity is definitely not linear ^^

Attempt 2 (lets see if I can just fool ’em)

So I thought: Why invest more time in a real solution when parallel taskprocessing which will cost me few seconds to implement… maybe I can trick Codilitys testrunner into thinking my runtime is good enough… worth a try.. Changed the first for loop to:

Result: Can’t run on testrunner (don’t know how they configured their runtime, but it seems illegal to spawn new threads.. mhmpf ok, so I really have to solve the problem for real then)

Attempt 3 (2 loops)

Ok, we can reduce the loop to a single one and only calc the difference:

Result: 100% Correctness, 100% Performance… okay, that wasn’t that hard… lets try sth. more challenging next time

A developer going nomad

So, I became one of these digital nomads recently..

Before I started my journey, I was a little worried how hard it would be to find clients without ever having real face time with the other party. I can’t put in my personality to do half of the job and that might only be one of the minor problems.

Back in Germany application processes (for short & long-term projects) were pretty much a breeze. The market works in favor of developers for the last 10+ years and I became a decent salesperson over the years.

So, one question kept bugging me (and actually awake at night):

What is my market value when I remove my mother tongue and my geographic location from the equation?

It’s also doesn’t really come in handy that german companies are light years behind on the remote development movement and 99% of the project requests I get for development are of the good old 9-to-5 sit in our office type.

So, I hadn’t had a chance than to look at the market for international remote projects & developers.

It’s a jungle out there

Boy, was I shocked of what’s going on out there.

Thousands of developers (primarily from emerging countries like India, China, Vietnam, Eastern Europe, etc.) are competing over a few (good) clients.

At least that’s how it feels.

With platforms like Upwork on the rise and a brutally competitive market space (with programmers working for <$10/hr) I knew it would be a challenge to display my skills and assets to potential clients, as there’s so much noise out there and clients are flooded with applications and requests.

But: Experienced clients that expect and need top-of-the-class results know that it’s a fallout waiting to happen when hiring close to the bottom line and far from real market rates. Great developers just don’t need to work for peanuts, even in international markets.

So, the question was: Who do these clients turn to in times like these? 

Raising the bar

The answer is pretty simple: In order to prevent application flooding, intelligent filters are needed that separate the wheat from the chaff.

And the problem (for the developers ofc, for the clients it’s the solution): Everything that is happening completely digital can be automated or at least semi-automated. And clients make use of this heavily

Clients give out sample projects requirements, require an active GitHub and StackOverflow profile and a whole lot of other stuff.

And potential hires have to deliver!

One client shamelessly requested up to 10 days of effort for a single sample project

 

So for me as a developer the natural questions come up:

How do I get around this hassle and don’t waste my time working on countless unpaid sample projects in order to present my skills?

Class society

The answer is simple. There are developer networks out there that are damn hard to get in. With TopTal as one of the platforms with the highest reputation among developers and clients in this space, it was a natural decision for me to apply to their Web Programmers Network. Their test is supposed to be pretty tough (a friend of mine already applied and failed in the algorithmic part of the test) and I will definitely do a ton of HackerRank and Codility tests before. As I think a profile on TopTal is a badge I can show to future clients (before doing just another sample project).

For me it’s like what Jay-Z already sang about:

And since I made it here
I can make it anywhere

– Empire state of mind

Anyway, I will keep you posted how it went 😉

jay-z-meme-funny-picture

ASP.NET MVC configurable RequireHttps filter

One of the constant hustle of a developers life is to deal with different deployment and system scenarios for all the Prod, Staging, Testing, etc. environments. One, that comes in particularly unhandy is to deal with SSL certificates on testenvironments, which is (often) a real pain to manage properly.

As a solution I use my own configurable filter for all my projects and I usually only turn it on on Prod & Staging.