Fay: How an 8 year old shocked Software Engineers and what that means for the industry?
The Software Engineer Role Model
For years, the tech industry has relied on a tried-and-true method for finding qualified software engineers.
Most notably, whiteboard interviews and LeetCode-style algorithm challenges.
While there's a true value in this approach, and may be able to give important insights into an engineer's capabilities, it's not the only factor in the table anymore.
Meet Fay, an 8-year-old girl who went viral on social media developing a chatbot in a couple of minutes with the assistance of AI.
In this post, we will talk little about Fay's appearance (go check her out, she's amazing!) and we will focus more on what this means for the industry and how teams are adapting their workflows so that even an 8 year old can push code to production.
"The traditional metrics of engineers are being challenged."
Beyond Algorithms: The New Essential Skills
In this new landscape, crafting elegant algorithms from scratch it's not enough anymore. Instead, there's a new class of engineers: The ones that can utilize various workflows to not only deliver huge amounts of value in a short periods of time, but also improve the productivity of their peers in the process.
Let's explore these new qualities, so that later we can dive deeper into them.
The new "Meta":
- Effective Documentation: Understand how to prompt, guide, and integrate AI not only in their own workflows, but to a larger set of people.
- AI-integrated Solutions: Designing systems (internal or external) that can be benefitted from LLM's and Agents.
- Code Quality: Ensuring that the code generated by AI is of higher quality, maintainable, extendable, testable.
- Velocity: Accelerating development cycles without compromising on quality.
The Business Case for AI-Augmented Engineers
Startups or projects with limited budgets, the idea that a couple of senior engineers can instruct other junior engineers or people from other fields and areas in the project, while maintaining a good quality bar is an interesting idea. People from other backgrounds are able to join in development.
A Senior Software Architect will have more tasks:
-
Architecting software solutions, design patterns and best practices, project-wide.
-
Generate documentation and data during the development process that will be used at every stage of the project for consultation and prompting.
-
Create effective prompts for AI tools that will be used to generate code, documentation, and other artifacts.
-
Guide less experienced team members to leverage AI effectively, thereby multiplying the team's productivity
Real Case Example:
One of our in-house projects that is currently in the makings, we have created a series of prompts and workflows that are used to develop various aspects of our product, from Marketing, Software Development, Design and more. These workflows allowed us to be more or less agnostic to the task at hand, this benefited us as we were able to execute more tasks outside of our fields of expertise, increase predictability in our deliveries, standarize documentation and more.
AI-Powered Development in Action
Let's check concrete examples of how AI is reshaping tech:
Cursor AI: The Fever
Cursor AI exemplifies the potential of AI-augmented development. Let's take a look on how we are using it as team:
-
Initial Planning and Preparation:
- Create detailed Product Requirements Documents (PRDs)
- Research and document core functionalities
- Design project structures & system flows.
-
Documentation:
- Feed initial PRDs to AI models for improvement and gap-filling, opt to create templates so that it improves predictability.
- Convert AI-generated documentation to markdown, and make use of other tools for markdown manipulation.
- Convert AI-generated graphical documentation with Graphviz. Users-flows, ER diagrams, etc.
-
Software Development:
- Equaly, create various documentations about the project's code architecture.
- For each piece in the architecture, a certain type of prompt might be needed, for example, when implementing CRUDS on the server-side, make use of templates or even scripts that will gather the necessary data such as schemas, API documentations, interfaces (input/outputs), edge cases, how it should be extended, error handling etc.
- Execute a TDD approach with AI assistance and Cursor's Compose functionality along with the previous information.
- Use marketplace extensions for pair programming, project management and more.
-
UI Enhancement:
- Utilize AI tools like V0 to improve UI components
- Ensure consistency across the application with AI guidance
It's right in front of us; We embrace.
Like it or not, in terms of practical results, we are already seeing many products out in the market, even if they are MVP's, the fact is that folks from other areas of knowledge are more and more able to launch their things.
As tools that integrates AI into workflows become more sophisticated, we can expect this to accelerate further. The most successful engineers and companies will be those who embrace these tools, integrating them into their workflows, allowing people from other fields to collaborate together.
Hurrah!