“When I came to Rice, I was open to chemical, electrical, and other forms of engineering, but it was computer science that really grabbed me,” said Eugene Byon.
The Rice University alumnus (B.A. in CS ’95) recalled his first class, when the professor walked in and wrote a single digit on the board.
“Bruce Duba walks in and draws a figure 5 on the board. He pointed to it and shouted to the class, ‘What is this?’ Now the first thing we’re all thinking is this is definitely not what we expected from Rice. We responded it was the number five, and Bruce replies, ‘No, it’s not. It is just a representation of the number five.’ A lot of us were confused and turned off by that, but for me something clicked: fiveness is really just a concept.”
Duba taught the introduction to computer science class using the Scheme programming language and the concepts driving The Little Lisper (now The Little Schemer). Byon said, “His teaching of recursion made me realize that even though I had graduated as class valedictorian, my high school classes were very mechanical—only requiring me to memorize and regurgitate facts, or apply formulas. My early CS classes at Rice taught me I had a long way to go in challenging my assumptions and learning how to think. CS did that for me.”
Another CS professor taught Byon about programming language principles, which he said was far more important than learning a specific set of programming languages.
“Mike Fagan helped us understand the different types of programming languages and their concepts. Now when a new language comes out, there are fewer surprises because you know most of the principles behind it, and that helps you learn new languages faster.
“One of the basic concepts is treating functions as first class objects. That wasn’t a concept that anyone thought much about when I first started working in industry, but now it’s a very common thing to consider them as objects–passing them around and having other functions call them. Having learned those principles at Rice made the industry’s adoption of functional programming easier for me than for my colleagues who hadn’t studied the basics.”
Byon also credits some of his success to a Rice course launched in his sophomore or junior year. The new class introduced CS students to software engineering as a discipline and Byon recalled two experiences that impacted his future career in IT: programming at scale and working on a team.
“First, we were programming in the large. In high school and my initial years at Rice, I had only written small programs here and there. But in industry, computer scientists write larger systems to do bigger jobs. This course made me think about how to design such systems in terms of smaller components that integrated well with each other. We had to test the components individually, integrate them, and then test them together.
“At ExxonMobil I’ve played a part in building scientific computing systems for upstream geoscientists and engineers. These systems often have to exchange data and communicate with services provided by other teams within the company and outside vendors and we have to make them all talk and work together. We’re often talking about millions of lines of code and thousands of components. Building larger-sized systems in that software engineering class was a good, real-life experience.”
The second impactful lesson came from being grouped with two other classmates in the software engineering course. Each trio was required to assign roles to its members, such as quality assurance, development, testing, and product management. The required teamwork was challenging as it forced groups to face roadblocks together.
“Instead of working on our own, we had to depend on our teammates. On good days, we brought the best out in each other. On bad days, we learned we had to become more mature in our thinking and how we held ourselves and one another accountable to our work commitments.”
Byon pursued an advanced degree after graduating from Rice, enrolling in the master’s program at Indiana University. Although he initially expected to stay on for a Ph.D., he recognized his interests were more aligned with practical application than theory and research. Byon decided to take a break and work in industry after completing his master’s degree.
At the IT job fair at Indiana, Byon visited with well-known technical companies like IBM, Motorola, and Arthur Andersen. Exxon also had a booth at the fair, but Byon did not seriously consider a career in oil and gas until his father challenged him to be more open-minded.
“Truthfully, I longed to improve my relationship with my dad. He had been a chemical engineer with Exxon for many years and the company had treated him well. I thought if I heeded his advice, it might lead to more conversations with him.
“Strangely enough, the application process with Exxon did not lead me to feel grilled or judged by anyone. The recruiters treated me as if I were a potential family member they wanted to get to know. The conversation ended up being about my upbringing and passions, including my relationship with my dad, and not just about my internships and skills. That drew me in. Then I learned I would get to work with professionals in other disciplines to build really technical IT solutions, working with people like my dad.”
Exxon was the only offer Byon received that included a cross-discipline environment; his competing offers would place him on teams working primarily with other computer scientists. Byon realized the diversity of disciplines and personalities would be a better fit, and he predicted a higher level of job satisfaction would be achieved by using his technical skills to help colleagues in different parts of the company.
Since 1997, Byon has been solving problems by interacting on a daily basis with ExxonMobil co-workers who bring a wide range of expertise in other disciplines to the table. This has shaped his thoughts on what makes an ideal IT professional today.
“My advice to current and prospective Rice CS students is to develop skills on both the technical and non-technical sides of IT. Learn how to work with peers as well as customers in different domains. I believe the kinds of IT professionals we need most will work well with people and still be highly technical. Teams with those types of people end up innovating the best solutions and delivering business value to customers faster.”