DevOps is an oft-misunderstood buzzword, seen as a trendy must-have in the form of technologies, tools, and staff to acquire. But it's much more, yet much simpler, than that.
Project management tools have dramatically transformed the way software is engineered, but which one should you use, and when? In this article, Toptal Freelance Developer Juan Carlos Arias Ambriz outlines the differences between Jira and Trello and explains how you should choose between them.
While the success of your project depends on many factors, one of the most common reasons projects fail is a lack of management or downright bad project management. In this post, Lead Engineering Editor Demir Selmanovic teaches you the basics of Agile project management using Kanban and Trello.
Small teams frequently have to compete with bigger, more structured organizations who are capable of allocating more resources to project management, and software release management in particular. This means that small teams, or even individual developers, need to properly organize and execute their release process in order to keep up. In this article, Toptal Freelance Software Engineer Lucas Mancini focuses specifically on small startups, teams that don't have, or can’t afford, DevOps support, or teams that don't have a formal process defined for releasing new versions of their product. The author provides a suggested checklist method to manage releases, tailored to match his past experience working on different projects, together with some recommended best practices and guidelines.
The Art of War is an ancient military treatise, but despite its age, the text is still included in the syllabus at many military schools. Sun Tzu’s principles and teachings also have practical applications in politics, business, sports, and, believe it or not, software development. In fact, you might just be applying some of these principles in your daily routine, without even knowing. In this post, Toptal Freelance Software Engineer Jose F. Maldonado explains why many of these ancient teachings still matter, and what you can do to make them work for you and your team.
Using modern DevOps Tools like Chef, Docker, Ansible, Packer, Troposphere, Consul, Jenkins, SonarQube, AWS, etc., does not mean that you are applying DevOps principles. DevOps is a way of thinking.
One of the hardest things to do in software development is to determine how long and how much it will take to deliver a new software product. Should it be so hard? The answer is not straightforward.
In this article, I will show that unit testing itself is quite easy; the real problems that complicate unit testing, and introduce expensive complexity, are a result of poorly-designed, untestable code. We will discuss what makes code hard to test, which anti-patterns and bad practices we should avoid to improve testability, and what other benefits we can achieve by writing testable code. We will see that writing testable code is not just about making testing less troublesome, but about making the code itself more robust, and easier to maintain.
When entering the remote developers’ world, the biggest obstacle that managers must overcome is to change their mindset by accepting that the developer will not be in plain sight, and where they can manage and follow the work being done. This new paradigm requires businesses to implement a number of mechanisms to track progress and avoid a redundant workload. Such mechanisms will help both manager and developer be more productive, which is in everyone’s best interest.
World-class articles, delivered weekly.
Subscription implies consent to our privacy policy
Thank you!
Check out your inbox to confirm your invite.
Join the Toptal® community.