Learn from Java Champions: Trisha Gee x Java Daily
In our special Java Daily edition, we would like to introduce you to Trisha Gee. We are incredibly excited to be able to share some of her great experience with you. Trisha Gee is a developer, technical advocate, and educator, based in Spain and working remotely for JetBrains. She loves the combination of solving technical […]
In our special Java Daily edition, we would like to introduce you to Trisha Gee. We are incredibly excited to be able to share some of her great experience with you.
Trisha Gee is a developer, technical advocate, and educator, based in Spain and working remotely for JetBrains. She loves the combination of solving technical problems and working out the best way to teach other developers techniques that will make their lives easier. She is a leader of the Sevilla Java User Group, and a key member of the London Java Community. In 2014 she became a Java Champion and is a 2015 MongoDB Master.
Java Daily:What is more important: an optimal algorithm or code that is easier to read?Trisha Gee: Absolutely code that is easier to read. Well actually, of course, the real answer is “it depends”, but I would say generally speaking for the majority of application code readability (and therefore maintainability) is much, much more important than a nanosecond here and there in performance. Because let’s remember that choice of algorithm does not normally have the biggest impact on performance, performance problems are usually from things like making too many network calls to the database, not from having a couple more CPU cycles from an under-optimised “for” loop. Also, let’s remember that the JVM optimises our code at run time, and it’s much better at optimising simpler code in smaller methods with predictable flow control. And guess what? Humans are better at reading that stuff too.
Java Daily:What is the future of Java when compared to NodeJS? Is Java good enough to win in this competition?Trisha Gee: I’ll be honest, I think this is like asking “Are oranges good enough to beat competition from apples?”. Sometimes NodeJS is the right choice. Sometimes Java is. These are not necessarily competing technologies, every technology has its best use cases and niches.
Java Daily: How do you define success?Trisha Gee: Happiness. And happiness is far harder to achieve than other measures of success like the right title, right salary, right location, right car, right spouse, or whatever. To be honest, I’ll settle for “content” if “happy” is too hard.
Java Daily:What was the biggest challenge you had to overcome in order to achieve what you have today?Trisha Gee: My lack of confidence in myself. And I don’t think this is a challenge that’s easy to overcome alone, you need people to help: friends, family, colleagues. Even professional help like coaches and counsellors. We do face external challenges to overcome, especially if we’re members of an under-represented group, but it’s also difficult to progress if we don’t believe in ourselves. That’s a really important thing to get right.
Java Daily: Where do you see yourself in 5 years?
Trisha Gee: On a beach, sipping cocktails, not worrying about anything… yeah not really. That’s going to take a lot longer than 5 years! This is one of those trick job interview questions that you have to answer with the “correct” answer for the company hiring you. So if JetBrains is reading this, I 100% believe I will still be working at JetBrains only doing More and Better :) In all honesty, I would like to continue with my current job, I really like what I do. And there’s enough variety and challenge to keep me interested for at least another 5 years.
Java Daily:What is the most efficient software development process?Trisha Gee: Whatever works for you! Obviously, the answer is “it depends”. Scrum, for example, is great for some teams and organisations, and terrible for others. It depends on the team and individuals, it depends on the business domain, the customers’ needs, and the constraints of the system and the organisation. I’m a fan of agile methodologies but they don’t suit everyone.
Java Daily:What are the 3 most important factors for the success of a software product?Trisha Gee:
People
People
People
All of the people involved - the developers, the business analysts, the testers, operations, management, etc. The communication between these people is key, without effectively communication you can have the most skilled developers or the most knowledgeable business, but if they can’t talk to each other you are not going to get a system that does what the business needs.
Is there anything else you would like to ask Trisha Gee? Who would you like to see featured in Dreamix's next Java Daily? Let’s give back to the Java community together!
Innovators by heart. Developers by passion. We’re Dreamix Team - a group of trailblazing techies trying to make the world a better place through technology. We provide custom software development, keep you updated on market and industry trends, and have a great time doing it.
Sign up for our newsletter and never miss an article
[mc4wp_form id=8036]
Manage Consent
To provide the best experiences, we use technologies like cookies to store and/or access device information. Consenting to these technologies will allow us to process data such as browsing behavior or unique IDs on this site. Not consenting or withdrawing consent, may adversely affect certain features and functions.
Functional
Always active
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes.The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.