Secondary Navigation

Thoughts of Graduates - Xiaoli Yang and Shenzhi Zhang

Xiaoli Yang and Shenzhi Zhang sporting their 2017 CS Hoodies

1989 MS graduates share memories of their time at Iowa as well as highlights and tips from their careers.


When did you graduate from CS at UI? With what degrees?

We both graduated in 1989 with MS in CS.

What have you been doing professionally since then?

Xiaoli had worked for Microsoft since graduation for over a decade, worked as a software developer on programming language tools such as compiler, debugger etc., also worked on photo editing products for many years.

Shenzhi had worked for Microsoft for 5 years and then left and started his own company working on music software and game engine development. Later he joined a Startup called Syntrillium working on audio editing and Adobe bought Syntrillium in 2003 and since then he has been working on audio editing, video editing and Virtual Reality.

What memories do you have of the courses you took or the professors you interacted with in CS at UI?

We had so many fond memories of the department. We are very grateful for the chance to do graduate study there. Professor Kearney was our academic adviser. He guided our research work on computer vision, reviewed our paper and sponsored us going to conference. He also helped us find our first job at Microsoft. We are forever very grateful to him for all his help.

We also became close friend with Professor Hantao Zhang who taught Shenzhi Graph Theory. Xiaoli also worked as TA for Professor Slonneger, who was a very kind and dedicated in teaching. Shenzhi had great time in Professor Bruell’s seminar, he was always very encouraging so Shenzhi didn't feel very nervous when doing presentation.

Can you describe some of the ways in which being a Computer Science professional has changed since you started your careers?

The software industry has certainly changed a lot over the years. For a software professional, there are two major changes. First is that you need have strong communication skills. In early days the projects were small in general, machine was slow and developer just need to dive into algorithm to make the code smaller or faster and sometimes both while tester just do black box testing.  We didn't even have "program manager" job title back then. Now the projects usually are huge. A lot of times you need to coordinate with people from different groups within your organization and work with people from other organizations.

Another change is the software development method change. We used to do a planning → design → implementation → testing → release cycle, we call it waterfall model. Nowadays an agile model or scrum model is widely adopted. These two changes are related. The agile development model satisfies the communication requirement needed for huge projects.


Other "Thoughts of Graduates" at this link.