You are opening our English language website. You can keep reading or switch to other languages.
12.06.2025
8 min read

AI Assistants: DataArt Experts’ Experience and Key Takeaways

In today's fast-paced tech landscape, the effective use of generative AI tools can reshape how we approach software development. A survey by McKinsey suggests that integrating AI into development workflows can enhance efficiency by up to 40%. In this article, DataArt experts Denis Tsyplakov, Aleksei Gorbunov, and Allan Wellenstein share their experience using three popular AI tools: GitHub Copilot, Amazon Q, and Claude.

AI Assistants: DataArt Experts’ Experience and Key Takeaways

Article by

Denis Tsyplakov
Denis Tsyplakov
Aleksei Gorbunov
Aleksei Gorbunov

GitHub Copilot: Boosting Developer Productivity While Navigating New Challenges

Denis Tsyplakov, Solutions Architect, DataArt

I’ve been using GitHub Copilot for over a year, and I can confidently say it significantly improves developer performance. I've found that my productivity has increased by more than 50% for regular coding tasks. However, this boost in efficiency also brings important challenges that we need to address carefully.

The Skill Factor

It’s important to recognize that using Copilot effectively requires a solid understanding of programming. For beginners, using it can be like trying to drive a sports car without any experience: the potential is there, but you need to know how to handle it. The more skilled you are in coding, the better you can take advantage of this AI tool's features.

The Challenge of Adapting to New Technologies

It's important to consider a significant drawback of using Copilot: it performs best with well-established tech stacks that are at least two to three years old. When developers work with newly released tools, they often find that Copilot struggles to provide relevant suggestions. Instead, it tends to rely on older features, forcing developers to find workarounds or manually implement new functionalities without its support. This can lead to longer development times and may prompt teams to revert to outdated technologies simply to maintain efficiency. As a result, this reliance on older frameworks could slow down the adoption of new technologies. If Copilot doesn't adapt and learn to utilize new tools quickly, we risk confining developers to a limited set of frameworks and methods, ultimately hindering innovation and productivity in the long run.

The Code Generation Paradox

One of the most interesting aspects of GitHub Copilot is how much code it generates, which goes against the industry trend of valuing concise and clear coding. Traditionally, software developers have focused on writing less code by using higher-level languages and frameworks that promote clarity. Copilot’s tendency to produce larger amounts of code challenges the progress we've made over the past 80 years in reducing code complexity. It will be fascinating to observe how this trend evolves and what it means for the future of software development.

Navigating Copilot's Coding Style

Another challenge that arises when using GitHub Copilot is its distinct coding style, which can differ significantly from that of the developer. Each programmer has their own unique "handwriting," but Copilot interprets code in its own way, sometimes leading to unexpected issues.

At times, Copilot stubbornly clings to its own coding preferences, even when this leads it to generate incorrect code. In these situations, I may spend 10 minutes trying to persuade Copilot to align with my requirements. However, it is often simpler to write a portion of the code myself.

Using Copilot feels like collaborating with a partner who has different coding habits. Although this partner is often intelligent and helpful, it can occasionally behave unpredictably. Developers must remain vigilant, continuously checking for potential errors.

Final Thoughts

In conclusion, my experience with GitHub Copilot has been largely positive. However, while we take advantage of this powerful tool, we must also be aware of its limitations. By balancing Copilot’s strengths with its challenges, developers can fully utilize its capabilities while maintaining innovation and quality in software development.

Amazon Q: Crafting Clear Prompts for Accelerated Software Development

Aleksei Gorbunov, Solutions Architect, DataArt

Amazon Q is a comprehensive suite of generative AI products that enhances both software development and business operations. Its Amazon Q Developer component accelerates design, code generation, and unit-test creation by leveraging project context and best practices. Amazon Q Business enables organizations to derive actionable insights and automate workflows through natural-language queries against their data. Also, Amazon Q integrates with AWS services such as Amazon QuickSight, Amazon Connect, and AWS Supply Chain to deliver advanced analytics, streamline customer interactions, and optimize logistical processes. Collectively, these capabilities promote efficiency, consistency, and strategic alignment across development and operational teams.

Key Strengths

Based on practical experience, Amazon Q Developer demonstrates several notable strengths. Its documentation generation consistently produces well-structured, high-quality outputs that align with professional standards. The tool also excels in generating unit tests, effectively covering both standard business logic and complex edge cases when given clear prompts. Additionally, it performs exceptionally well in producing utility scripts and prototype code, accelerating the development of supporting components. These capabilities make Amazon Q Developer a reliable assistant for enhancing code quality and speeding up software delivery.

Best Practices for Effective Usage

To get the most out of Amazon Q Developer, it's essential to use it within the right context and with proper configuration. Integrating it with an IDE like Visual Studio Code or JetBrains unlocks key features such as autocompletion, inline suggestions, hover documentation, and one-click code insertion. Enabling workspace indexing is also critical—it allows Amazon Q to analyze your project's structure and dependencies, leading to more accurate and context-aware code generation. For better results users should treat all generated code as a draft, not a final product and always review it for correctness and maintainability: this ensures the output meets your team's coding standards and architectural principles. With the right setup and a critical eye, Amazon Q Developer can become a powerful productivity tool.

Prompt Crafting: Critical to Success

The quality of code generated by Amazon Q Developer significantly improves with well-crafted prompts. Clear intent, relevant context, and defined constraints are essential for producing high-quality outputs. It's important to be specific in your requests—state your objective, programming language, and the scope of the problem up front. Including examples in your prompt is especially effective, as they provide a concrete way to communicate your intentions. Providing surrounding code or describing the expected outcome helps Amazon Q generate more accurate and relevant suggestions. For complex tasks, breaking the problem into smaller, sequential steps leads to better results and clearer guidance. Iteration is also key: refine the output by making follow-up requests for targeted adjustments or clarification. It’s also possible to further enhance results by applying advanced prompt engineering techniques such as chain-of-thought or tree-of-thought reasoning, which guide Amazon Q through structured, step-by-step logic. This prompt-driven, example-rich, and strategically guided approach helps you unlock Amazon Q’s full potential.

Final Thoughts

Amazon Q Developer is a powerful productivity accelerator, particularly effective in familiar environments and for routine development tasks. It shines as a collaborative assistant that augments your workflow, rather than replacing critical thinking, or architectural decision-making. While occasional inaccuracies may occur, they are typically resolved with clearer prompts, additional context, or minor refinements. This iterative, conversational interaction model makes Amazon Q especially valuable for teams engaged in application migration, modernization, and continuous feature development.

A standout feature is Amazon Q Transform, which streamlines legacy application migration by automating code conversion and offering strategic recommendations. These include comprehensive migration plans that highlight potential blockers, suggest modernization patterns, and guide teams toward more efficient implementation paths.

Beyond coding assistance, Amazon Q enhances the entire Software Development Life Cycle (SDLC). It can automate documentation, streamline internal communication, and generate tasks or tickets that integrate seamlessly with tools like Jira (trough Amazon Q Business or custom workflows). This not only saves time but also improves cross-functional coordination between developers, product managers, and operations teams.

For organizations using Amazon Q Pro within an AWS account, the benefits extend even further. It can scan workloads, identify inefficiencies, and provide tailored recommendations for cost optimization, security, and resource usage—turning insights into actionable improvements across environments.

In summary, Amazon Q Developer is more than just a code assistant; it’s a strategic enabler for modern software teams. By blending prompt-based collaboration, automation, and deep integration with the AWS ecosystem, it empowers organizations to elevate their development processes and accelerate delivery with confidence.

Claude: Creating a Functional POC with Limited Coding Experience

Allan Wellenstein, SVP, DataArt

My team was working on a project that involved displaying data on a Google Map. Although the task appeared straightforward, we lacked prior experience with it. Initially, I considered asking an expert to create a proof of concept (POC) to demonstrate the process. Instead, I decided to experiment and give the task to Claude.

The Experiment

I emailed Claude, providing a description of the task and including screenshots for context. Claude generated the code, corrected errors, and delivered well-commented, high-quality code.

Creating the Data Set: I requested Claude to create the necessary data set for the project, which proved beneficial.

Handling Multiple Services: I discovered multiple services at the same location, unaccounted for in the initial design. Claude suggested a design solution that included the number of services in the pin and organized the tile accordingly.

Debugging: I encountered a bug and shared a screenshot with Claude. The AI identified the issue, a case sensitivity problem, and provided a fix.

The Outcome

In the end, I managed to complete the task entirely on my own, despite not having developed in years. Claude’s help didn't end with just the coding; it extended to design decisions and debugging as well. The code I received was well-commented and ready for production.

Final Thoughts

My experience with Claude has shown me just how much AI tools can influence the development process. From what I’ve seen, AI tools like Claude could really help us with some developer tasks, leading to greater efficiency. I encourage all developers to explore and integrate these technologies into their routines.

Conclusion

When used right, AI assistants can automate routine tasks, significantly boost productivity, and streamline the entire software development process. Contact us to explore the full potential of AI-driven software solutions tailored to your business needs.

Subscribe to Our Newsletter

Subscribe now to get a monthly recap of our biggest news delivered to your inbox!

Share