Rouan Wilsenach bio photo

Rouan Wilsenach

Principal software engineer

Codementor badge

Twitter Github LinkedIn Stackoverflow

Articles

Want to be a better developer? Work somewhere inclusive.
Blog post right here

When we fail to welcome diversity, we’re missing out on being better at software engineering. The skills you need to thrive in an inclusive workplace are the same skills that will make you an amazing software developer. So not only do we have teams where diversity is not valued – the developers in those teams are missing out on the chance to be so much better at their jobs!

Read more ...

Secure together: SnykCon 2020
Blog post on the Tes Engineering Blog

I recently took two of my Tes training days to 'attend' the inaugural SnykCon. It actually happened a few weeks ago, but thanks to it being a remote conference and recorded I was able to attend anyway, in my own timezone, without flying anywhere. Which I think is just fantastic. There was a good mix of content. I got exposed to some new ideas.

Read more ...

40+ great resources that will rock your release velocity
Article on TechBeacon

It doesn't matter how quickly you can build software if you can't get it in front of users. What's more, once it's out there, you need to be able to tell if it's actually doing what you'd hoped and ship adjustments fast. Here's my roundup of some of the most useful resources for learning how to create a reliable, repeatable route to production that will help you release code faster.

Read more ...

4 ways to stop your shared microservices from falling apart
Article on TechBeacon

Good microservices have a clear purpose, but not all good microservices have a clear owner. Some services serve a utility purpose and are shared among multiple consumers in your technical landscape. How do you best look after these shared services?

Read more ...

10 stress-free steps to fix even the scariest bugs
Article on TechBeacon

You've got a product bug, and the pressure is on. Your users are upset, there's a group of grumpy managers huffing nearby, and you're somehow expected to keep your cool and get to the bottom of what's gone wrong. Here are some tricks to help you stay calm and fix even the most terrifying production bug.

Read more ...

3 prioritization techniques to beat software deadline stress
Article on TechBeacon

When faced with an unrealistic deadline, there’s a choice to be made. Something's got to give. Do you do all the things requested, but do a bad job because you're under pressure and there's not enough time to do them properly? No. The answer is prioritization and coming up with a picture of what 'good enough' looks like.

Read more ...

How much is your software support costing you?
Article on TechBeacon

The full cost of supporting software is often overlooked. It's relatively easy to track the time it takes to fix bugs that crop up, but that isn't the full picture. The problem is that when so much of the support process goes unnoticed, it's difficult to know where you could be saving time.

Read more ...

How to develop self-healing apps: 4 key patterns
Article on TechBeacon

Self-healing applications sound futuristic. The phrase conjures images of advanced artificial intelligence (AI) algorithms adjusting complex processes. But while machine learning may be the next big thing in the tech industry, you don’t need any AI at all to build applications that heal themselves.

Read more ...

How many layers does your testing cake have?
Article on TechBeacon

When development teams think of building applications, they usually think about what features they want to build. But those applications also needs to satisfy a set of cross-functional requirements. Here are key factors to consider as you build tests that account for all of your requirements.

Read more ...

Quick, clean commits with partial linting
Blog post on the Tes Engineering Blog

Tired of your commits taking >10 seconds? At Tes, we use husky to run code when the git precommit hook triggers. Most often, we run npm run lint so that we can catch linting errors before they’re even committed. The problem is that, even when you’re developing microservices, it could take quite a while to lint all the files in your repository. On one particular repository, committing was taking 12 seconds, so I decided to do something about it.

Read more ...

Two years with no testers: What I learned
Article on TechBeacon

Assigning dedicated testers is a well-entrenched pattern that has driven the behavior of software developers, often in the direction of picking up bad habits. But for big companies such as Facebook and Yahoo, working without testers is business as usual. Here are useful lessons I've learned over the past two years working without dedicated testers.

Read more ...

Why your DevOps transformation is failing
Article on TechBeacon

Organizations that rely on IT for their success fall into two categories: those that work smart and get things done, and those stuck with outdated modes of working that struggle to innovate—or even to keep up. The organizations in the first category take a variety of forms, but those in the second often look quite similar. They're mostly large, older enterprises. And they're in trouble.

Read more ...

5 cures for your test data headaches
Article on TechBeacon

Tests are a crucial part of ensuring that our systems actually do what they’re meant to do. All tests inevitably rely on data in some form. The problem is that testers tend to get themselves into unnecessary tangles as a result of how they create and maintain their test data.

Read more ...

5 ways to put your microservices to the test
Article on TechBeacon

After nearly two years working in a microservices architecture, I've learned to break a lot of my own rules. When working with a large set of small, diverse applications, the rules just don't seem as important. A microservices ecosystem pairs well with a more pragmatic approach to testing.

Read more ...

Should you write automated UI tests?
Article on TechBeacon

UI tests use your application as a user would. At their best, they are the single most comprehensive way of testing your application. At their worst, they cause developers to spend hours every week maintaining tests that never actually stop any bugs from reaching production. Not sure whether your next feature needs a UI test? Here’s a simple set of questions to help you decide.

Read more ...

3 production QA practices that will save your business money
Article on TechBeacon

Most organizations use quality assurance practices to improve the quality of their systems, hoping that, in the long run, the increase in quality will lead to lower costs and higher profitability. The problem is that they may be wasting too much time worrying about issues that will never happen. QA in production is a set of emerging DevOps techniques that focus on fostering a keen awareness of what the actual issues are in production.

Read more ...

5 ways to cheat the software change curve with DevOps
Article on TechBeacon

DevOps practices can push the boundaries further, reducing the cost of change dramatically. These practices tend to focus on what happens while and after software is released, and each of them makes it cheaper to make changes late and often. They can even help you deal with what happens when things go wrong, as they so often do.

Read more ...

QA in Production
Article on martinfowler.com

Things always go wrong in production, but this doesn’t have to be a bad thing. It’s an opportunity to learn about your system and the real world with which it interacts. With the right production monitoring tools and a good Continuous Delivery pipeline, you can build a set of feedback mechanisms that help you find out about issues as they happen and ship fixes quickly. Adopting production QA practices can help you gain a richer understanding of the real issues your system faces and learn new ways to improve its quality.

Read more ...

Are your tests slowing you down?
Article on TechBeacon

Application tests are useful because they help you go faster. They help you to make changes to your code without fear of breaking existing functionality. That said, I’ve seen teams get slowed down by their approach to testing. Here's how you can avoid that fate.

Read more ...

Don't be a DevOps hero
Article on TechBeacon

Many organizations stumble on their DevOps journeys because, even as they focus on breaking down silos, the teams formed to champion DevOps end up becoming silos themselves. Here's a look at how these DevOps heroes are created, why it’s problematic, and a few techniques to help you avoid this trap.

Read more ...

3 techniques for stress-free release management
Article on TechBeacon

Thanks to an explosion of DevOps tools and techniques, releasing new features no longer needs to be a stressful, all-weekend slumber party. What follows are a few release management techniques that you can use to take the stress out of releases and get a good night’s sleep.

Read more ...

Killer dashboards
Article on TechBeacon

How many people are using your website right now? Which features are their favorites? Are they experiencing errors or getting stuck? How are your servers performing? Is your code easy to work with? Are you making money? Create the right dashboards and you'll have the answers to these questions all around you, all the time.

Read more ...

11 ideas to crank your deployment pipeline to 11
Article on TechBeacon

In the parody rock movie This Is Spinal Tap, the band's guitarist gets himself a brand new amp that's so loud, he explains, that its volume knob goes up to 11 instead of just 10. Once you've set up your first deployment pipeline, you may be looking for ideas to make your deployments easier and more reliable. Here are 11 ideas you can use to give your pipeline that extra push.

Read more ...

Stylish and Sane: A Guide to Better CSS
Article on InfoQ

Let's face it. All websites need CSS and yours is probably awful. There's too much of it. There's a bunch of duplication. It's like a delicately spun spider web, tightly coupled and fragile. It has more patches than a bicycle wheel. It doesn't need to be this way. I’ll introduce you to the concept of component-based styling and show you how to curate a style guide for your site.

Read more ...

Running the gauntlet: Setting up your first deployment pipeline
Article on TechBeacon

You have a new feature you need to take to production. Maybe you've created it to respond to some customer feedback or a new opportunity in the market, and the business wants to deploy it as quickly as possible. Do you know the path the code must take from a development machine to production? How do you know the changes you've made aren't going to break existing functionality? To answer these questions, you need a deployment pipeline.

Read more ...

Is QA dead?
Article on ThoughtWorks Insights

Test automation is not a new practice. Most software teams are trying to automate testing in some way or another, especially as a replacement for long, manual regression testing cycles. If you’re a QA, you’ve probably wondered what this means for your job. In the world of ‘automate everything’ – where do you fit in? Is the role of the QA dead?

Read more ...

DevOps culture
Bliki post on martinfowler.com

DevOps is a movement to break down traditional silos between developers, operations and other delivery groups. Although many tools are useful, it is primarily a cultural change.

Read more ...

Four attributes of an agile business
Article on ThoughtWorks Insights

Building software is something that your business needs to do well. You see more revenue moving through digital channels and you’re starting to realise that this trend will continue. Your company’s ability to remain competitive hinges on your use of technology. This same technology gives new competitors the ability to springboard their businesses and scale quickly.

Read more ...

Why you should hire a polyglot programmer
Article in P2 Magazine

It’s common for people to be sceptical of software developers with varied coding experience. We’re used to seeing, “5 years C# experience” on the CV in front of us, so when we see a CV that says: “2 years of Ruby, 1 year of Python and 2 years of Java”, we might be concerned that the person doesn’t have the depth of experience we need. Although this reaction is natural, it’s misguided.

Read more ...

My life as a developer at ThoughtWorks South Africa
Interview with ThoughtWorks Insights

Shortly after opening our first office in South Africa in 2012, our recruitment team were fervently sourcing the local market for people to join our rapidly growing 'family' in Johannesburg. Rouan Wilsenach was one the first few developers to join the team and now three years later he reflects on his journey and shares his advice for future ThoughtWorkers.

Read more ...