Neil has a broad technical background in full stack customer-facing applications, backend reactive microservices, scalable distributed computing solutions, and data science and analytics. He’s also a recovering lean startup entrepreneur. He has lived and breathed devops for several years, and has a considerable amount of experience in agile software development which has provided him ample opportunity to build an intuition about what works and what doesn’t.
- What is the biggest misconception of a reactive architecture system?
I’m not sure if we can call it a misconception, but adopting reactive architecture definitely requires adopting a more reactive mindset as well. If done well it creates a virtuous cycle, improving both technical practices and culture and product development. It’s not a magic bullet for all the other stuff you don’t do well. Adopting a reactive architecture isn’t going to make working on that huge, old, impossible monolith any easier, or fix the fact that your manager is a poor listener.
- What are the advantages of using OSS (open source software)?
I think the most obvious advantages of OSS are that it’s a collaborative development that we can all get involved in (looking under the hood is always a useful option), better security and quality of code, and saving money.
- What would you say is the number 1 business value gain from moving to a reactive architecture?
I think the number 1 business value gain from moving to a reactive architecture is saving money scaling down when things are quiet and keeping customers happy by scaling up to address bursts of increasing demand.
- What would you say are your top 5 benefits of an
- Optimizing for learning has got to be the most important thing that we are all doing. The pace of change, the variety of existing solutions, and the option to create bespoke ones necessitates that we all pay a lot of attention to making sure we are always learning.
- Delivering as fast as possible leads to satisfied customers through early and continuous delivery of value. A key agile principle. It gives costumes the chance to course correct as soon as possible. Most human communication is inherently lossy so continuous delivery is a great way to test that we’re all on the same page.
- Eliminating waste with habits like #2 helps us to avoid building the wrong thing, and avoiding what we might need (YAGNI) to focus rather on what we do need.
- When it comes to uncertainty in our decision making process, deciding as late as possible in order to evaluate alternatives leads to stronger technical decisions based on evidence and not conjecture.
- Empowering the team helps avoid burnout and also pushes everyone towards continuous improvement, which is today’s market is a keep advantage. And continuous improvement helps with all the above points, leading to more of that virtuous cycle stuff.
- What is one thing you are most excited about in the tech industry for the near future?
I think the work being done to define and secure the software supply chain, like TUF, is one of the most exciting things coming down the pipe. TUF graduated from CNCF incubation over the summer. I think being able to trust repositories regardless of whether you built the artifacts in them or not is a big step in the right direction towards a more continuous deployment model for all kinds of software in the open source community. I think it will help projects like ONAP keep up with their downstream consumers and their upstream dependencies.
- What do you like about working at YoppWorks?
I’ve got enough autonomy to get myself into trouble or to shoot for the stars, but I am part of a great team, and even if I do make mistakes I know they’ve got my back just like I’ve got theirs.