Ray Shan on Coding as a Hobby and Saving Time With JetBrains IDEs
In our last customer interview of 2020, we talked to Ray Shan, senior director of product management at LTSE. Ray shed some light on his professional background and explained how he is using WebStorm for his side projects and DataGrip for his work.
Hi Ray! Could you tell us a little bit about yourself?
For starters, I didn’t study computer science. I studied finance. My first job out of college was as a trader on Wall Street. It was not what I expected, not because I hated the industry but because I’ve always been more of a builder at heart. I wanted to build cool things that would make a difference.
Right now, I oversee product management at a company that helps people start their businesses and grow them successfully. The software that we make helps startups solve common problems such as finding investment, hiring the right people, and many others.
As head of product management, do you still get to write a lot of code?
When I joined the company three years ago, I did write quite a bit of JavaScript code using WebStorm. I no longer get to write code at LTSE – I mainly do analytics work and pretty much live in DataGrip the whole day. But I still use WebStorm for some of my side projects outside of work.
Can you share some examples of these projects?
I’ve been contributing to open source and coding for fun since I left my first job on Wall Street. For example, I worked on Angular and Bower.
My latest side project is Stock Inspector. With the COVID situation, I’ve been thinking a lot about how to help people, including myself, make use of the money they’ve saved up. I decided to make an extension for Chrome that would show you information about stocks and ETFs while you browse the web. This, among other things, could help you find new investment opportunities.
I also occasionally contribute to Modern Web, a podcast about web technologies, the latest things happening with frameworks, and so on.
What motivates you to contribute to such things?
I think it’s a great way to democratize how people learn and practice software engineering. If the web wasn’t an open platform that you can easily deploy to any time, a whole generation of engineers would not be building software.
Do you remember how you started using JetBrains IDEs for work and your personal projects?
I started using WebStorm a long time ago. I think I got hooked on it because it was one of the few IDEs that had integration with Angular early on. And I was an early Angular adopter. As I was super comfortable with WebStorm, I decided to then try DataGrip later, when I needed to do a lot of work with databases.
Did you know that you can use DataGrip features inside WebStorm?
Yes, and I know that some people prefer using IntelliJ IDEA Ultimate for everything, but I’ve always felt more comfortable using a dedicated tool for each purpose.
What would you highlight as the key benefits of using a JetBrains IDE?
First, I like that your IDEs come with all batteries included. I know that some people prefer the text editor plus plugins approach but I don’t feel like spending time looking for all the required plugins and maintaining them. I see you as the curator of the set of plugins that I should be using. You put what is needed under one package and I simply trust your curation. This makes me more productive. I focus on my code rather than the tooling.
Now that I’m leading an engineering team, I think a lot about onboarding new engineers. Having the same set of tools for everyone helps us share configs and learnings with each other. Besides that, your IDEs have the same shortcuts and a similar UI. It’s easy for team members to switch between them.
Another benefit is refactoring. It’s one of the biggest reasons why you’d want to use an IDE rather than a text editor. Text editors do a pretty good job at refactoring single files, but you really need an IDE to refactor code across the entire project.
What code refactorings do you use most often?
I’d say renaming is by far the most frequently used. To me, naming is a lot harder than writing code because you always need to make sure you and other people understand your code 5-10 years down the road. I can never get the naming right on the first try, and systems change over time. I’m always refactoring.
Lastly, do you have a favorite WebStorm shortcut?
That would be Extend Selection. When you need to do a lot of typing, you try to find ways not to move your hands around too much. This shortcut is one of the things that really helps me with this.
We’d like to thank Ray for taking part in this Q&A.
If you use WebStorm and feel like sharing your experience with us, please let us know by leaving a comment below.
The WebStorm team