Rob Kennedy

Father, Leader, Author, Developer, Entrepreneur

Maximizing Productivity and Reducing Burnout with AI: The Importance of Work-Life Balance

In this seventh article in the series of Life Lessons of a Software Engineer, we explore the lesson of taking breaks and prioritizing your well-being. In today’s busy world, it’s easy to get caught up in work and other daily responsibilities. To meet deadlines and reach our goals, we often put our own health and

The Importance of Project Management Skills in Software Development

In this sixth article in the series of Life Lessons of a Software Engineer, we explore the lesson of staying organized and managing your time well, which are crucial for delivering projects on time and within budget. If you want to be successful in your career, you need to be able to stay organized and

5 Tips for Effective Collaboration in Software Engineering Teams

In this fourth article in the series of Life Lessons of a Software Engineer, we explore the lesson of collaborate effectively with others working with a team of software engineers. Any software engineering team that wants to succeed must be able to work together well. It requires good communication skills, the ability to work well

Maximizing Quality and Efficiency: The Top 5 Testing Practices for Your Code, Including ChatGPT

In this third article in the series of Life Lessons of a Software Engineer, we explore the lesson of thoroughly testing your code. Testing your code is an important part of making software. It helps you make sure that your code is reliable, efficient, and bug-free. By writing and running tests, you can find issues

Code Hygiene: How to Write Clean, Readable, and Maintainable Code

In this second article in the series of Life Lessons of a Software Engineer, we explore the lesson of maintaining good code hygiene. Code hygiene is an important part of software development. It refers to the practices and habits that developers use to keep their code clean, organized, and easy to understand and maintain. Having

7 Tips for Continuously Learning and Improving Your Skills as a Software Engineer

In this first article in the series of Life Lessons of a Software Engineer, we explore the lesson of continuously learning to improve your skills. As a software engineer, you need to keep learning and improving your skills to keep up with the newest technologies and best practices in your field. Here are some things

Revolutionizing software development with AI: How algorithms are transforming requirement gathering and analysis

As software engineers keep improving artificial intelligence to find new ways to help us all in our daily lives, I’d like to turn our attention to using the same tools to make the processes that make software more efficient. AI algorithms can look at unstructured text, such as user stories or requirements documents, and pull

10 Essential Life Lessons for Software Engineers

My original plan for this blog post was to be a simple summary, but I’ve decided to go into detail with a unique blog article for each life lesson. Along the way, I’ll introduce how emerging Artificial Intelligence (AI) can be leveraged to make an impact on a particular lesson as well. As a software

Maximizing Productivity: The Importance of Being Proactive in Problem-Solving

In this fifth article in the series of Life Lessons of a Software Engineer, we explore the lesson of being proactive in problem-solving and seeking out solutions quickly to address issues as they arise. As people and as a society, we always have problems and challenges to deal with. It can be tempting to wait

Thoughts on Web 3.0 and Decentralization

In the last decade, the world has trended toward reducing IT costs via a cloud-first strategy, which has driven the software development patterns of organizations to move on to a Service Oriented Architecture (SOA) approach to rethinking existing projects and a SOA-first strategy for new projects. The world realized quickly that security was going to