Reading 03: Burnout

Although I’ve never experienced burnout myself, I do believe that burnout is a significant problem in the workplace, particularly in the technology sector prone to high stress and long hours. The readings for this week present a variety of interesting, differing takes on burnout. I’d like to address a few of these and and how my own take on burnout factored into the search for my first post-graduate job.

One of the readings on burnout for this week notes that “considerable evidence shows that overwork is not just neutral – it hurts us and the companies we work for.” For me, the first thing that comes to mind when mentioning burnout is long hours. At first I assumed that burnout must be inevitable – it may be variable for different people but eventually everyone has to hit their breaking point. Given enough time and pressure, everyone must assuredly succumb to burnout. But is that really true? Yahoo CEO Marissa Mayer certainly doesn’t seem to think so. In the reading focusing on her thoughts on burnout, she expresses opinions on burnout that differ in certain key aspects from what seems to be general consensus on the topic. Rather than focusing on the actual number of hours worked, Mayer’s philosophy is to ensure that her employees “have time in their schedules for those things” that are really important to them, whatever those things may be.

When Mayer says she “doesn’t believe in burnout” it at first comes across as if she doesn’t care about driving her employees to work long hours and disregards the “sickness that resembles clinical depression” as referenced by another of our readings. But upon further reading of the article on Mayer, it becomes clear that she simply believes in a refreshing focus on individual employees and the needs those employees require in order to stay fresh and effective in the workplace.

Despite having little personal experience with burnout myself, I knew early in my search for a company with which to begin my post-graduate career that I wanted to find a company that respected my time, ambitions, and pursuits outside of the office. For me, burnout doesn’t seem to be necessarily directly correlated with hours. At Notre Dame, I know there are some projects and assignments that I don’t wish to spend countless hours working on. Yet there are others I’m so passionate about that I can work on them for hours on end without feeling any negative side effects from my efforts. I’m sure the same will apply in some capacity to my experience in the workplace.

Luckily, the company I’ll be working for values the ability of its employees to both step away from the office and to pursue those side projects and activities they are interested in. I’m sure I’ll be taking part in various office sporting events such as its recreational basketball league, as playing sports and staying physically active is one of the methods I’ve found effective in avoiding burnout in college. Furthermore, in several rare instances for the consulting industry, my company not only maintains a 40 hour work week, it also provides its consultants overtime pay if the 40 hours per week is exceeded should a project hit “crunch” time and extra work be required. Additionally, a variety of other employee friendly initiatives such as company financed training, tools, and other employee development coverages all factor into what I believe will be a passion-inducing, burnout free work environment.

Reflecting on Project 1: Code of Ethics

When setting out to write our own code of ethics for Notre Dame Computer Science and Engineering students, we modeled our code on the ACM code of ethics for industry professionals while making some key changes to reduce ambiguity while also attempting to model different portions of our ethical code to better fit the lives of modern day students and the ethical challenges that they face. While the professional workplace certainly introduces areas of ethical ambiguity, we strived to eliminate as much ambiguity as possible. Additionally, many of the altered/new topics discussed in our code of ethics were written with the intention both serving students well while at Notre Dame as well as preparing them for ethical behavior in their post-graduate careers.

Both in the workplace and perhaps especially during college, some assignments and tasks may seem boring, unrewarding, and/or superfluous. Our code of ethics outlined the importance of giving “100% effort on any given assignment” with the understanding that the “quality of each assignment reflects not only on the individual but also on the University as a whole.” Similarly, each assigned task reflects on an employee and his/her company in the professional world. This is just one example of how we attempted to tailor some of our ethical codes to function as natural precursors to those found in the ACM code of ethics. I believe we succeeded in outlining the importance of ethical behavior early in one’s academic career and how such behavior can build upon itself to produce an ethical professional once one’s time at Notre Dame has concluded.

While our code of ethics could certainly apply to students at university’s around the country/world, we also tried to imbue certain sections of our code of ethics with the essence of what it means to be a Notre Dame computer scientist in particular. Notre Dame students in general are held to a higher calling of not simply doing well for themselves, but also doing “good” in the world. This calling appears in various points of our code of ethics, such as in section 3.1 where we address the responsibility of Notre Dame computer scientists to not only conduct themselves ethically, but also to promote the ethical behavior of others.

Despite our best efforts, it is impossible for a code of ethics to address every possible scenario of ethical uncertainty and question. Our code of ethics certainly has weaknesses, not the least of which is the fact that all those who wrote the code are still currently students, and thus lack the degree of ethical experience possessed by other more experienced industry professionals (such as Professors and administrators at Notre Dame). To attempt to combat some of the weaknesses in our code of ethics, we included several provisions noting that when in doubt, students should use their best judgment while remembering their ethical imperatives as a Notre Dame student.

While certainly beneficial to outline a code of ethics for Notre Dame computer science students to follow, I also believe as previously mentioned that a code of ethics can never hope to cover all possible situations that may present an ethical dilemma. As such, one must combine a code of ethics with logical, well formulated personal thought and decisions. A code of ethics serves as a great framework for ethical decisions, and by having and reading one, it does help to make one cognizant of the ethical ramifications of every decision you make. But to actually put ethics into practice, one must be able to count equally – if not more so – on one’s own morals and intuition.

Reading 02: The Interview Process

When beginning my senior year at Notre Dame, I knew I didn’t want to be one of those students who graduate with no concrete plans for the future, forced to return to mom and dad’s house with precious little time to figure something out before the unstoppable arrival of student loan payments. I threw myself into the job application and interview process earlier than many. Little did I know the odyssey I was embarking on.

Full of experiences mostly good and occasionally bad, the job interview process was certainly always interesting. I’m still amazed at the diversity of procedures and methods used in the job application process at different companies across the technology sector. In his article “Why Can’t Programmers…Program,” Jeff Atwood notes that it is likely “foolish to begin interviewing a programmer without looking at their code first.” From the start of my own interview process, I endeavored to ensure that companies would be able to quickly and easily see evidence of my coding abilities. Several of my interviewers for various positions noted their approval of my inclusion of a link to my github profile as part of my application. By allowing them to see the source code of various projects I’ve worked on, I think I was able to establish my credibility as a competent programmer, at least in part, before I even set foot in the door for an interview.  I believe this step of preemptively demonstrating my coding abilities proved advantageous for both myself and those interviewing me, as we were often able to advance past simple coding questions into some really interesting topics of discussion, especially when interviewing for consulting firms that take particular interest in a candidate’s ability to effectively communicate and interact with a diverse team of coworkers.

In “On the Unreasonable Reality of ‘Junior’ Developer Interviews,” Sam Phippen notes that Senior Developer interviews usually “take the form of some kind of technical discussion with the interviewer” while excluding any real time coding. Interestingly, I think some of my best interviews – both in terms of my own performance and the feedback I received from the company involved – were actually of this structure. By providing my github profile and and a brief description of a few of my previous coding projects beforehand, my interviewers and I were able to have a concrete discussion about my experiences, my successes, and my failures – all without having to spend valuable time silently coding on paper or a whiteboard. For me, much of the stress of an upcoming interview always stemmed from the potential of facing a coding test I didn’t know how to solve. As expected, I was able to more confidently and enthusiastically discuss the technical details of a project I spent weeks or months working on than a test I spent the last thirty minutes on.

Of course some of my interviews consisted of nothing more than a guided coding exam of sorts, either in person, over the phone, or live online. I certainly understand the logic of companies that go this route, especially if the statistic of 199/200 applicants not knowing how to code is true. And I may have previously voiced my preference for another style of interview, but that isn’t to say I didn’t enjoy some instances of these coding exams. A bit of excitement and challenge does accompany the stress of these interviews. I tried my best to prepare for this style of interview by going through several online “interview coding test preparation” tutorials as well as a few coding exam books aimed at helping candidates ace interviews. While enlightening, I’m not sure how much this preparation actually helped, as I never really saw interview problems similar to those I studied beforehand. But the simple act of brushing up on key coding concepts definitely couldn’t have hurt.

Several companies I interviewed with also administered various forms of “take home” coding exams prior to advancing candidates to the main stage of in person interviews. This method proved frustrating on occasion. Sometimes after submitting a take home exam, I would simply never again hear from a company, having to assume I didn’t make it to the next stage. Or if I did receive a undesired response, it rarely contained any concrete analysis of my performance on the exam, usually simply stating their gratitude for my application and their desire for me to apply again in the future. Of course there are two sides to every coin, as companies (especially large technology firms) have to sift through hundreds of applications for a single position. But as an applicant for that position, I often wished more concrete feedback was given so that I could improve my performance on future applications. Sometimes a lack of feedback and communication in the process made it feel like I was seen as just another name in a company’s stack of applicants rather than a real-life person passionate about the opportunity to work for the company.

With my first post-graduate job interview process complete and a position firmly in hand, I can certainly attest to the unique nature of interviewing for a job as a programmer.   Was the process efficient? Usually but not always. Was it effective? Mostly yes. Was it humane? For the most part.. And was it ethical? Despite any minor complaints previously mentioned, I’d have to say yes. Thankfully, I never experienced the type of embarrassment noted by Steve Shogren in his post “Interview Humiliation.”

We’ve talked in class about the unique nature of computer science in general, and how difficult it is to classify as a discipline. For this reason, I can’t blame companies for their differing interview styles and practices. Fittingly, the interview process as a computer scientist is diverse, sometimes complicated, and definitely hard to condense into one simple methodology.

 

Reading 01: What is a Hacker?

When told to picture a ‘hacker,’ many may immediately envision a disheveled computer programmer with an unkempt beard sitting alone in some dark room, furiously typing away at a keyboard. More often than not, this first impression includes the notion that a hacker also intends to crack into some government or big company site for nefarious purposes. Putting aside momentarily the ethical and moral implications of this characterization of a hacker, the common perception of hackers even goes so far as to categorize the types of other activities they enjoy, the food they eat, and the myriad of other ways in which they live their lives. If common sentiment and some of the readings for this week are to be believed, then I hardly qualify as a hacker. I love sports. I’m organized in both the digital and the physical world. And I like dogs more than cats. Each of these facts contradicts the picture of your average hacker as outlined in the article “A Portrait of J. Random Hacker.” Furthermore, “in the hands of a sensationalist media, the ethos of hacking is conflated with the act of cracking computer security” according to the article “How Yuppies Hacked the Original Hacker Ethos.” My severe lack of knowledge regarding complex computer security protocols must then certainly disqualify me from consideration as a hacker. And yet despite the contradiction posed by the opinions presented in these articles, and often the public consensus at large, I nonetheless consider myself a hacker. Why?

I consider myself a hacker because I don’t subscribe to the narrow view of hackers presented by sensationalist, popular media. While individuals cracking cyber security are certainly hackers in their own right, they aren’t alone. In my opinion the term ‘hacker’ need not even be relegated solely to those in the field of computer science. The word hack from which it was derived certainly sees frequent use outside the field of computers. “The Word Hacker” article notes that “when you do something so clever that you somehow beat the system, that’s also called a hack.” ‘Hacks’ exist across almost every professional discipline. And the internet is full of individuals touting ‘lifehacks’ they use to simplify everyday tasks. To me, a hacker is simply someone who utilizes creative, cunning thinking to accomplish a task in the easiest, most efficient manner possible, whether applying these key characteristics to computers or any other endeavor. This definition allows me to easily describe myself as a hacker.

As a computer science student concentrating in media computing, my days are most often spent focusing on what visually appears on one’s computer screen. In the realm of visuals, what looks good enough is actually good enough. The article “Hackers and Painters” summarizes this notion best by stating that “What hackers and painters have in common is that they’re both makers. Along with composers, architects, and writers, what hackers and painters are trying to do is make good things.” My concentration is all about the simple act of making good, visual things. With this in mind, a whole world of ‘hacks’ becomes available to make my life a little easier.

Of course my life as a hacker doesn’t include the ethical questions faced by those hackers who find themselves in the more talked about cyber security field. If I cheat and use a few little hacks that allow one of my animated scenes to render faster without producing much of a noticeable difference on screen, no one suffers any consequences as a result. This doesn’t disqualify my role as a hacker however. No one ever said that a hacker must necessarily be breaking the law, exposing private information, or engaging in other ill-intended activities. We see new forms and expressions of the hacker ethos every day – DIY culture, urban farms, 3D printing, etc. People are constantly creating, reinventing, and finding new ways to make tasks easier, often outside of whatever boundaries/expectations may have previously been imposed. We’re all hackers – no unkempt beard required.

Post 2: Why Not All Three?

Is Computer Science an art, engineering, or science discipline?

I think part of what drew me to computer science in the first place is the discipline’s wide open nature. To me, it really can be almost anything you want it to be. As I mentioned in my introduction, I’m concentrating in media computing, so it would be very easy for me to argue that computer science is an art, as I’ve chosen to focus on its abilities to create digital, visual media for entertainment. Throughout my academic career at Notre Dame, I’ve often applied computer science in an artistic manner. From group projects consisting of recreating classic games like Pacman and Donkey Kong to the process of creating my own short, animated film, I can personally attest to the fact that computer science applications often require imagination and creativity – two hallmarks of art. And yet, I too have plenty of experiences with computer science that don’t seem artistic at all, and I’m sure many more will follow in my professional career as a software consultant.

Just like the argument can be easily made that computer science is an art, so too can one very simply make the case that it is falls instead in the field of engineering. After all, computer science does fall within the College of Engineering at Notre Dame. But, that is not the case at every school. Across the country, computer science majors find themselves in a variety of other colleges, such as Arts and Letters. Either this disparity itself lends credence to my assertion that computer science can be many things at once or Notre Dame is simply crazy for sticking it in the College of Engineering. Notre Dame isn’t crazy. Just as I’ve frequently applied artistic skills in my applications of computer science, so too have I applied common engineering skills. And even in my artistic computer science endeavors, there still lies the general engineering undercurrent of logical problem solving.

And of course it might be easiest of all to argue that computer science is simply a science. The word science does appear in the discipline’s name after all. Merriam-Webster loosely defines science as “knowledge about or study of the natural world based on facts learned through experiments and observation.” Computer science certainly falls within this definition, as it consistently helps in the study and improvement of the natural world. Whether applying it to physics simulations, medical studies, or biology research, plenty of people use computer science in a purely scientific manner.

Is computer science an art, an engineering field, or a science? I’ll answer that question with a question of my own. Why can’t it be all three?  With strong, valid arguments supporting computer science’s status as an art, an engineering field, and a science, we must conclude that computer science truly is what you make it. And that fact in turn makes computer science itself something really powerful, something really diverse, and potentially, something really dangerous. Because computer science can exist across the spectrum of all three scenarios mentioned, it too brings with it a diverse array of ethical questions and challenges, each requiring its own unique consideration and answers.

Introduction

My name’s Ryan Moran. I’m a senior, computer science major at Notre Dame concentrating in media computing. As someone concentrating in media computing, I’m particularly fascinated by the ways in which computer science can be used to produce visual, tangible products such as animated films, video games, etc.

I’m really interested in the role of computer science in society moving forward. It seems like we’re reaching a transition point after which computer science (and technology in general) may start significantly taking away jobs and tasks from humans rather than creating them. With the rise of artificial intelligence, it makes one wonder if someday even the computer scientists themselves may be replaced by machines.While present day issues such as government surveillance, privacy, and freedom of information are interesting, I’ll be particularly eager to hear about some of these new ethical issues that computer scientists may face in the not so distant future.