Johnny Butler

October 14, 2022

Appetites, Project Deadlines, Due Dates...

When scoping/planning development work for the engineering team the first question from the developer is always: When does this have to be done? How long have we got? Generally these deadlines are never met and it's always accepted that a software development project will go beyond the given allocation, it's rarely launched before/on t...
Read more
May 26, 2022

Shape Up - Advice for Tech Teams

Few thoughts on how some early projects went using Shape Up. The extra work put into the shaping, clear expectations/boundaries really shine through with this approach. From a developers point of view it should be a more enjoyable way to work with clear expectations but enough freedom to be creative while implementing a solution. 1) Ne...
Read more
May 22, 2021

Bugs Within The Software Development Life Cycle - How Best To Manage?

Regardless of the engineering teams competency bugs are part and parcel of the life cycle of every software development project. Within the software development paradigm there are best practices for nearly every part of the development life cycle except bug management. I have participated and witnessed several different approaches over...
Read more
April 24, 2021

Ruby & Static Typing

Exposing myself to solidity & truffle.js recently I was reintroduced to static typing. Static typing generally consists of stating what the data type of a variable/attribute will be before assigning it a value. If that value ever changes it’s data type unexpectedly it will raise an error. Compiling your code can highlight such instance...
Read more
April 22, 2021

Introduction

This website is just some rough thoughts based on my experiences working in various start-ups, both as a member of the development team and as the tech lead. Having experience in both roles hopefully allows me to see things from each others perspectives and make decisions based on previous experience and future needs. I have worked in ...
Read more
April 22, 2021

What Technology Should I Use?

It's easy to get caught up in the latest great programming language or framework but a start-up shouldn't be concerned with that. The majority of these latest programming languages/frameworks come from big corporations like facebook/google with huge tech teams so not relevant to most start-ups. A start-up wants something tried and test...
Read more
April 22, 2021

New Feature Development - My Approach

When implementing a new feature or reworking an existing feature it's very important to have a clear specification of what is expected at the finish. Some time initially working through rough designs and identifying any upcoming problems. It's important that you know what you are not trying to do as much as what you are trying to do. T...
Read more
April 22, 2021

Staff Retention & Productiveness

The tech industry sees a large turnover of staff which has intrigued me to learn more. I have researched the relevant studies and watched closely while working within. Studies found that tech professionals felt they were not given enough responsibility, they ultimately become unhappy and move jobs frequently. There are a number of reas...
Read more
April 22, 2021

Software Development Practices

Using sound object oriented software development techniques is fundamental to any software system but in particular to start-ups. Writing clean code thats easy to read/change is fundamental to maintain/develop for the business to grow. Following the principals of SOLID allows the system to adapt to meet changing needs. For example if y...
Read more
April 22, 2021

Test Driven Development - Thoughts & Experiences

Using TDD and having a comprehensive test suite are the backbone of any software application. The earlier this is used/introduced the better for many reasons stated throughout the industry. As I have worked in several start-ups the responsibility of the application working/performing lands on my shoulders, so this is essential. With a ...
Read more
April 22, 2021

Managing The Software Development Lifecycle - Tech Lead Perspective

When leading a tech team within a start-up it's very important to query all new development requests. While it's great to say yes and deliver every new feature, it could come at a cost further down the line. The business/customer may want a fully functional calendar feature with a rich UI, drag and drop, multi day appointments, export ...
Read more
April 22, 2021

My Start-Up Experiences & Opinions

Working in a start-up is very challenging but also very rewarding. It's not a place for passengers, every member has to contribute or the business could fail, its that serious. Having a certain level of business/tech skills is important but more importantly is the energy, drive and the enthusiasm you bring on top of that. It's importan...
Read more
April 22, 2021

Technical Debt & Staff Training

Problem Within a start up resources are generally stretched and it’s accepted that best practices are overlooked in certain situations in order to get a fix/feature out the door. This leads to the build up of technical debt that inevitably needs to be paid back, normally when you least want/need to. Another item that generally gets ove...
Read more