Lightning Interview #5: Larry Fernandez on Software Engineering: Past, Present, and Future
Larry Fernandez is a Principle Software Developer at Amway Corp in Ada, Michigan. He has been in IT software development since 1981, and was named an IBM Champion in 2012 and 2013. Larry's team is currently working on its second major Java/J2EE application using WebSphere Application Server technology.
In this fifth Java.net "Lightning Interview" we ask Larry to share some of the wealth his decades of experience in software engineering have provided.
1. Can you describe a way in which being a software engineer today is significantly different from what it was early in your career?
Larry: The technology available to software engineers today is more complex and changes faster than early in my career. The software engineer no longer uses a mere text editor to build an application. Now they use multi-function development tools which include editors, graphical aids, debuggers, execution environments, etc. to do their development work. The monolithic computing environments of yesterday have been replaced by complex computing networks that know no boundaries. Every few years all of this technology is subject to revision, upgrades, and even replacement at a pace that can only be described as "non-stop". Things moved a lot slower early in my career.
2. What's exciting to you about Java/JVM technologies today?
Larry: The proliferation of free source code and design patterns. Everywhere you look, you can find someone doing another Java open source project. If you want source code on how to do something in Java, you are an internet-search away from sample Java code. If you are looking for design ideas, prepare to wade through pages and pages of design pattern information. The sheer volume of available patterns for Java is mind-boggling. The greatest aspect of open source and design patterns is that the knowledge is free (thanks to the internet)! Free wisdom. It doesn't get any better than that.
3. What advice would you offer college students today who are considering a career in software engineering?
Larry: My advice would be to remember that many types of skills/abilities contribute to success in software engineering. In addition to having skills in specific technical areas (Java for one); problem-solving and relationship-building abilities are very important. But the most important non-technical skill/ability one needs to be successful in software engineering is passion. Passion for what you can do in software engineering. Passion for what you can contribute to software engineering. Passion for learning about what others are doing in software engineering.