AI-powered development platforms are transforming the way engineers work, enhancing efficiency, collaboration, and code quality. In this article, we explore best practices for integrating AI tools ensuring teams use automation responsibly while maintaining high coding standards.
On this page
AI Tools For Key Development Functions
1. Code Generation & Quality Assurance AI Tools
2. Automating Repetitive Engineering Tasks AI Tools
3. Machine Learning & Data Science Tools
4. AI-Powered Collaboration & Productivity Tools
It’s okay to admit it - letting go can be difficult! I’m one of those old school engineers who prefers VIM to the JetBrains IDE suite, command line output to fancy GUIs …. But I’ve had to adapt. My career as a developer started in 2007 or so when I founded my own two-person development agency in the pre-iPhone era, and as my career grew in both responsibility and scope, managing and growing multi-national development in English and Spanish for Valere and building teams of 100+ engineers, I’ve learned to embrace how new technologies can help make small, medium, and large scale teams more organized, efficient, and secure.
It’s not just my own obsolescence that I’ve had to confront, but also how to teach junior and semi-senior engineers to use technologies in a responsible way. While I don’t think robots will take all our jobs, I do think that coworkers who learn the right habits and use new AI technologies responsibly are the ones who will thrive in the new economy. So think of this article as a blueprint to save your job as a manager while ensuring that your team will adapt to deliver best results.
Easier said than done! So first, a few caveats.
Don’t be afraid to point out to your youngest team members when they are just making copy-pasta of generated code, or not following your (non-automated) style guidelines that allow for good collaboration. In my experience the best thing you can do is leverage a combination of automated and manual code reviews, which allow for the stupid stuff (whether the algorithm spits out the right number, complete with a unit test) to be done by computers. Don’t worry, you won’t hurt their feelings!
That way true senior engineers (and aspiring tech leaders) can focus on the subtlety and art that differentiates great development teams from the merely mediocre - a semantic grace that may appear unnecessary but that will mean that whoever picks up where the current code review left off will be able to understand exactly what’s going on and how to improve on it. Always require at least one review by a more senior engineer, and also require that code reviews themselves be of a manageable size. If you don’t do that, your AI generated code will look like it’s written by brilliant lunatics, and we all hate to work with those people. Needless to say, it’s important to also pick a standard (human) language for any comments or review sessions. English is a good but not necessary lingua franca, and if new teammates are afraid, well, there’s an App for that …
Do weekly show-and-tells. I’ve always thought that the smartest people I know aren’t the best developers who work all day with a VR headset on, but those who can explain, to actual human beings, mostly dumber than they are, how what they did works. It’s okay to use assistance when writing code, but at the end of the day your developers need to be responsible for their own product, and this is a simple way to ensure that this is the case.
The important thing is to avoid letting the power unleashed by the AI revolution get out of hand. At a high level, I recommend the following:
Let’s put theory into practice by discussing some AI tools that actually work:
The first benefit of working with AI is generating (pretty good - see above) code, very, very quickly. As I mentioned - this isn’t just to crank out more and more layers of garbage, but to empower your engineers to focus on architecture, semantics, and the things that matter. It’s also a quick way to ensure compliance with basic security features like avoiding SQL injection and XSS vulnerabilities that even good engineers sometimes miss.
AI can be a powerful ally for ensuring code quality by identifying bugs, suggesting improvements, and enforcing coding standards. The big three I’ve worked with and highly recommend are:
Again, and I can’t emphasize this enough: these applications are not ends by themselves, they are meant to free up developers to write less messy code, which MUST be reviewed by others.
Next up are tools for automating repetitive tasks. Sometimes engineers don’t value their time (being nerds and all), but it’s important that they’re not just pushing buttons when they can be using those giant brains for more important things.
Next, there are the more specialized tools in ML and data science. Here you have to be even more careful, because elegant solutions require sustained thinking and iterations on top of boilerplate implementations, but if you can make your robot buddy do the boring stuff for you, have at it!
And last but not least, collaboration is the backbone of effective development teams. Some tools I’ve used that incorporate AI into effective product development via collaboration include:
Most importantly, keep learning and have fun! The landscape is continuously changing but for me, that’s the best part of working in this industry.
If you want to keep learning how to optimize your development team's efficiency and productivity with AI, check out our video "AI for Nerds: Best Practices for Using AI-Enabled Development Platforms and How to Empower Engineers" In this session, Jed, an MIT grad and former engineer at Apple and Uber, shares expert insights on how AI can streamline tasks, improve code quality, and enhance collaboration, while emphasizing the importance of human oversight.
Share