Randall Frank Tell us about your work---what do you do?
I am presently employed as a research scientist working at major national laboratory and at a large midwestern university . At the lab , my work is focused on the unique problems of tera-scale computing . I lead a group of multi-disciplinary software developers and researchers creating visualization tools designed to enable interactive visualization of simulation data. The simulations in question are often several tera-bytes (one tera-byte is one thousand gigabytes) in size. Our efforts involve distributed three-dimensional graphics systems, large-scale (hundreds to thousands of processors) parallel algorithm development and tiled displays. At the university, I am involved in neuroanatomical research into the physical substrates of emotions. This work involves the development of algorithms for real-time analysis of functional magnetic resonance imaging data. Much of the effort involves the application of hypothesis driven statistical models to images of cerebral blood flow. What skills are needed?
Technical skills include computer programming , 3D computer graphics , statistical modeling and linear algebra . More important are the interpersonal skills needed to work with a large inter-disciplinary team. What was your major?
I have BS and MS degrees in Biomedical Engineering . How did you get started in your career?
I got involved in 3D computer graphics in my first position as a research engineer at a university research facility. This position allow me to focus on the application of graphics to a broad cross-section of problems from neuroimaging to oil exploration. It was this early exposure to multiple application areas and research efforts in those areas that I have found to be most useful in my career. What experience do you need in this job?
A core competency and several years of practical experience in parallel computer programming and graphics is required for this position. A background in computer science or engineering is required as well. Describe your "typical" workday:
Over the course of a week, I spend about 25% of my time writing and debugging computer software and hardware. Another 50% is spent in project management activities (e.g. meetings with colleagues, writing reports and plans, overseeing contracts, etc). The remainder of my time is spent in research activities, reading and writing articles and experimenting with new data and ideas . What is the hardest aspect of your job?
The most difficult aspect of my job is coordinating and planning the large number of ongoing inter-dependent research and software development efforts. What is the most rewarding aspect of your job?
The ability to nurture and follow a novel idea from conception to reality and seeing that idea answer critical research questions and spawn new ideas is very rewarding. Being able to help someone visualization something (e.g. a number, a concept, even raw data) that has never been seen before can also be very rewarding. What are your suggestions for someone considering this field?
Always keep your mind open to the possibilities and look at every problem from as many points of view as possible. Use your education to teach you how to think and problem-solve rather than memorize numbers and formulas. In the real-world, we all have tons of reference books at our fingertips for the details. Take some time to learn how to write computer software. That talent is an extremely useful tool to help you express yourself concretely. Take solid courses from several different technical fields (e.g. fluids , mechanics, image and signal processing , statistics , etc). Some of the most rewarding work I have done has been on multi-disciplinary projects. The ability to communicate with people of varied background has lead to some very surprising and powerful solutions to the kinds of problems one might encounter in this profession.