Interview with Beavers: Elizabeth, Software Engineers

We’re always curious to hear how our teammates use DBeaver in their day-to-day work. This time, we had the chance to sit down with a technical specialist who has a major impact on both our product development and the support we offer to our community.

Interviews with our team’s innovative Beavers shed light on different ways to use DBeaver while revealing our inner workings. Today, we are shining the spotlight on Elizabeth, a software engineer at DBeaver. Let’s find out how she uses our apps, what her favorite features are, and what improvements she would like to see in the future.


How do you use DBeaver?
First, I’d like to say that most people working at DBeaver use our own apps every day. And, of course, I am no exception. Sharing databases and resources with our colleagues is easy with DBeaver Team Edition. Thanks to Team Edition, I can access all my scripts, connections, and projects on any computer. I often use both web and desktop versions to work with my scripts.

I am constantly working on the functionality of DBeaver’s SQL Editor, including highlighting, autocomplete, syntax, and semantic analysis. We have already taken a big step forward by improving the user experience. However, there is always room for further improvement.

Here, I can also describe one of the use cases of my work with the SQL Editor. I am working on SQL grammar, and since it is really huge, it is impossible to figure out relationships between all the rules just by looking at them. However, it is crucial to analyze all these rules for performance improvements or properly add a new rule to our grammar. As it turns out, it’s much easier to build a grammar graph and load it into a database. And then DBeaver comes to my help. Using SQL Editor, I can create queries to the grammar graph in my database to find the necessary relationships between rules that have both strong and weak connected components to the graph, cycles and recursions.
Why do you like our app?
I like that it has a lot of features in one app and that new ones are constantly appearing. If you lack some functionality, you can always create a feature request on GitHub. For me, DBeaver covers absolutely all needs when working with databases – from creating a query without writing an SQL code via Visual Query Builder to flexible data analysis and automatic diagram generation.

I am also delighted with the automatic emailing of a report on data export or executing some scheduled task. I think this greatly simplifies life not only for me but also for many of our customers.

And, as I mentioned before, I like to use the broad functionality of our SQL Editor. For example, Outline is very helpful when working with large queries: I can quickly analyze the query structure, and the tables used, and jump to the desired place in the code.
We know that you are engaged in working with the community. Can you tell us a bit more about that?
Yes, actually, I volunteered to be the person who helps our community, and I really like this part of my job. Thanks to doing this, I can see how many people are interested in DBeaver. They not only highlight some issues but also constantly bring new ideas to us. The interface of a powerful tool such as DBeaver can be complicated for some people, and I like to do my best to improve user experience.

Every day, I walk through dozens of new GitHub issues to answer users’ questions. Once a week, we also discuss some of the most important issues with the team. Additionally, I am actively working with contributors. Sometimes, it takes quite a while to review third-party pull requests, but we strive to take on board our users’ contributions.

The community is invaluable in helping us develop our products, and all these people inspire me greatly. I appreciate it a lot, and it is a pleasure for me to get feedback and help solve issues.
What do you want to improve in our app?
I would like to add the ability to refactor the code in the SQL Editor. We often know where something is miswritten in a query. Why not add heuristics with hints? For example, we can start with an algorithm for correcting typos. It would also be helpful to have the ability to rename all references in tables or columns in a script in one action.

There is another feature that I think not only I, but also our entire team of developers and testers, are for — recreating database objects from a script. For example, often, to reproduce a bug with an SQL query, we ask the user to send a script. But without having the tables and keys used in the query, we have to spend a lot of time recreating these entities.
Conclusion

In this conversation, Elizabeth shared her diverse experiences with DBeaver apps, from daily tasks to complex SQL analysis and community engagement. This interview series will help you find and adopt new approaches to enhance your workflows while learning more about our company. For further insight, watch our upcoming interviews with both our technical and non-technical DBeaver team members on our blog.

Author: