From the readings and in your experience, what ethical concerns (if any) do you have with Cloud Computing? What exactly is Cloud Computing? Considering the Internet meme that “There is no cloud. It’s just someone else’s computer”

Cloud Computing according to the New York Times, is a construct of computers connected to each other using sophisticated algorithms. In other words, the above quote is right. When you say something is stored on the cloud, that really is a euphemism for it being stored on another computer in an undisclosed location. Knowing this alone, there are some potential concerns. However, it is also unfair to suggest that there have been no advantages to the rise of this type of system.

As a consumer there are several benefits that have arisen from the rise of cloud computing. For example, as the New York Times article The Era of Cloud Computing states, many of the internet startups that have provided consumers with utility and entertainment only could come about due to the existence of public clouds. The article gives the example of SnapDX – a startup that helps with the diagnosis of autism in children. Without the cloud, their services would have taken a huge company dedicating hundreds of man hours to solving the problem.However, because of the cloud’s existence, the company just needs 22 people and the internet to function. Other popular entertainment services such as Netflix and Snapchat use the cloud to make online streaming and image chatting accessible and affordable. One of the biggest utility services that all of us use – Amazon, purely exists because of the cloud. At this point, it is almost unimaginable to live in a world where these services don’t exist, because they make our day to day activities so much easier and convenient. It is therefore unfair and plain out wrong to say that cloud computing has not changed the world for the better.

Now, the second question we must ask ourselves, is whether the cloud has led to direct or potential harm. I would say very little direct harm, because these services are still in their infancy, but the potential for deep harm to the public is very real. As The Era of Cloud Computing explains, only a sizable company can offer effective cloud services. Because of this, even though many companies and people use the cloud, only a handful of people understand it. This situation – where a handful of people understand a service that soon a majority of people will want or maybe even need – is one where the potential for abuse and exploitation is enormous. Monopolies or oligopolies are never good for the common man, and it seems like the cloud computing industry is heading towards one. Soon, we could see a cloud computing industry that looks eerily similar to the cable industry, which has one of the worst approval ratings of any utility industry. Secondly, there has been an increasing trend to store sensitive personal information on the cloud. If the security of the server is compromised this information could be leaked or sold to the highest bidder. There have been quite a few of these leaks recently, probably the most famous being the recent celebrity iCloud hack. Leaks like these could be damaging to personal lives or careers.

I have not had the chance to use the cloud as a developmental platform, but I am looking to change that shortly. Given its meteoric rise, programming on a cloud platform is an important skill to cultivate and one that I am looking to do as soon as possible.

Overall, despite the potential for harm, I feel that cloud services are a net positive. The benefits are many and very important. The cloud can be the platform for innovation the likes of which the world has never seen. It gives small companies and creative people with visions the opportunity to realize their dreams. This can only be good for the general public.

Edward Snowden

From the readings and in your opinion, is Edward Snowden a hero or a traitor? Should the US government pardon him for any possible crimes or should they pursue extradition and prosecution for treason?

I personally think Edward Snowden is neither a hero nor a traitor in the conventional sense. If anything, I would take a stance that he is somewhere in the middle, with the needle slightly pointing to the hero side. I feel what he did was ethically and morally right. The government was clearly violating the Fourth Amendment to the Constitution against illegal search and seizure, and the only reason that they were getting away with it was by not letting the common man know. By letting the world know, he made an attempt to right this wrong, which makes his actions (on paper at least), morally right.

All that being said, there was a little flaw in his implementation of letting the people know. Because he gave every document to the press, he put our national security on the line, because along with the evidence of government over-reach, there was also information on how the NSA surveillance was conducted against legitimate targets. As the article in The Diplomat states: “society has not appointed journalists or newspaper editors to decide these matters, nor are they qualified to do so”. Ironically in trying to take away some undue power from one source (the government), he gave as much (if not more) undue power to another source – the press. This certainly tarnishes his legacy; however, his end result of informing the American people in my opinion partially justifies his means. Hence, I would view him as a flawed hero.

What exactly did he leak and how did he expose that information? Regardless of the legality of his actions, is what he did ethical and moral?

Edward Snowden leaked information on illegal government over-reach. He was a defense contracter with Booz Allen Hamilton at the NSA, which gave him access to the secure artifacts that he would later leak to the press. He first leaked information on how the NSA reached out to Verizon, the cell service giant and through a secret court order to hand over phone information on over 10 million Americans on an ongoing daily basis. He followed this by giving his sources in the press, mainly The Guardian and The Washington Post, information about an online surveillance program known as Prism. Through this program the NSA was spying on the online communication of American citizens by, according to the BBC, “[tapping] directly into the servers of nine internet firms, including Facebook, Google, Microsoft and Yahoo”. He also gave The Guardian and The Washington Post information on how the British surveillance agency ,the GCHQ, was using Prism to spy on their citizens by tapping into the servers of the same companies.

To repeat the answer to the previous question, I certainly believe that what Edward Snowden did was ethically and morally sound. In a free society, government over-reach can be a huge problem. The constitution, and the Amendments and the Bill of Rights all exist to protect us from governmental tyranny. By doing what he did, he fulfilled his duty as an American, and more importantly as a global citizen.

Ultimately, is what Snowden did beneficial to the public or did he harm the security of the United States and its allies? Personally, how have these revelations impacted you (or not) and your views on government, national security, encryption, and technology in general?

Ultimately, I feel that what Snowden did was indeed beneficial to the public overall. I don’t think that his actions were without consequence – as there was a leaking of important government secrets that hurt our national security interests. However, it was more important that the American people knew that their government was monitoring them at times illegally.

Personally, this saga certainly affected my view of security. It certainly increased security’s importance in my mind. This saga also helped me realize the importance of citizen engagement in the government and ensuring that my rights as an American citizen are protected.

Reflection on Interview Guide

From your experience, what are the most important parts of the guide your group constructed? What do you know now that you wished you new earlier? What is the best advice or guidance you’ve received?

The most important parts of the guide are definitely the answers to when and how to prepare for interviews. I think it is of paramount importance to know the answers to these two questions to be a good interviewee. In addition to these two questions, I think the section about how to leverage the alumni network is very important. Going to Notre Dame is a privilege and a blessing in the job market, not just because of the brand of a Notre Dame degree, but also because of the large alumni network. Learning how to leverage the alumni network (or networking in general) is very important, and could be the difference between getting the job or not. In today’s world, networking is almost as important as technical skill. Technical skill may get you the job, however networking will help get you in the door, and automatically put your resume above the similarly qualified candidates.

I wish I had known how important practicing was when it comes to interviewing. I have always considered myself a socially adept person, and more than capable of handling myself in a conversation. However, an interview is not a normal conversation, as it is so focused on you and your personal achievements. My first couple of interviews went well, but I stumbled on certain questions, and wasn’t consistent. I soon realized the importance of practicing answers, and soon I became much better. On the technical interview side, I wish I knew how important data structures and operating systems were for internships, and read up on them before interviews. To be fair, once we covered them in class I was much better prepared. However, the first couple of interviews took me by surprise and I did quite poorly because they asked me questions about data structures I hadn’t even heard before.

The best guidance I received was from my older sister, which was to (counter-intuitively) treat the interview as a conversation and try to have fun. Doing this made me more relaxed and made my answers better. I was less rigid, and came across and more confident and personable.

College traditionally has been viewed as a place of learning, not necessarily job training and yet students are spending more and more time preparing for the job interview process. Should colleges adjust their curriculum to face this reality?

Yes, I believe colleges should adjust their curriculum to better prepare students for internship and job interviews. I also think it is a fallacy that learning and training for jobs are mutually exclusive. I think that both can happen simultaneously, with the result that colleges start producing people armed not just with theoretical knowledge, but also armed with practical knowledge to be more successful in the interview process and be better prepared for the real world.

Notre Dame can certainly change its curriculum to help it’s students do better at interviews. For example, the Data Structures and Operating Systems courses are taught in Fall and Spring semester of Junior year respectively. However, as I alluded to earlier, questions on data structures and operating systems are very common in technical interviews. I personally experienced this when I was interviewing for internships the beginning of my junior year. I was asked problems that required knowledge of advanced data structures to solve, and hence did very poorly. However, students in other schools study these two courses their sophomore year so by the time junior year comes around and it is interview season for internships, they are prepared to answer these questions. Notre Dame altering their Computer Science curriculum to include these courses earlier would certainly help prepare students for the interview while not really compromising on learning.

Classes where students discuss things like interviews, internships, jobs, contracts and so on (like this class) would also be more useful earlier than the last semester of college. I have already learned a lot this semester that would have been useful earlier in my college career. Again, this would not compromise learning but would help prepare students better for the workforce.

 

 

 

Interview Tips and Tricks

  • When should students start preparing or planning for internship or job interviews?

Student should start preparing for interviews as early as possible. The more practice you get at talking about your strengths and weaknesses (in a behavioral setting) or solving problems, writing code on a piece of paper and explaining concepts (in a technical setting), the better you will be in an actual interview. Practice could begin as early as the start of the semester, maybe ten minutes a day two or three times a week in your spare time.

  • How should students prepare or plan for these interviews?

The behavioral and technical interviews are easy in some ways and hard in others. The behavioral interview is mainly based on talking about your strengths and weaknesses effectively. You should start by listing eight or so experiences that you would like to talk about before leaving the room, ranked from top priority to lowest priority. This will help limit the awkward silence when you are thinking of an answer to a question that caught you off guard. This will also ensure that the interviewer does not leave the room without knowing at least a few of your most important and impressive accomplishments. Another thing to reduce potential awkwardness is practicing how to tell your story without meandering too much. It might seem strange to talk to yourself about your own accomplishments but this can make a world of difference. The other thing to keep in mind is to follow the STAR (Situation, Task, Action and Result) model while giving your answer. This makes you look more polished by communicating your accomplishments fully as succinctly as possible.

For the technical interview, it is important to look at the important classes such as Operating Systems and Data Structures and re-learn (or memorize) some of the key concepts, such as the difference between a heap and a stack, process and a thread and so on. Another useful exercise is to ensure that you know the big O value for sorting, searching and storing data in commonly used data structures such as trees, min or max heaps, stacks and so on. Lastly, going over some important well known algorithms such as depth/breadth first search, in/pre/post order traversal, min/max heapify and so on. Practice these by writing them on pieces of paper, so the whole experience does not seem strange when you are doing it in the interview room.

  • What resources should students consider? Books? Career Services? Student groups?

Mock interviews through the career center or a student group are a great way to prepare for the interview process. They give you a very realistic version of what an interview is like without having the full pressure of it. The questions you are asked are very similar to those that would be asked in an actual interview. Once it begins, you forget that the interview is fake, and you begin to feel as if you are in an actual interview. The entire experience is a greater way to learn about where you need to improve and what you did well. Unlike an actual interviewer, the person who interviewed can give you in-depth feedback afterwards. From there, you can figure out ways to improve your weaknesses and highlight your strengths for your actual interview.

Another great way to prepare for interviews is through preparation books. The only downfall to these is that they can be incredibly long and cumbersome. It is impossible to memorize every possible question that could be asked to you during an interview. A better process is to remember a few projects you have done that can be used to answer each question. When reading through the book, concentrate on how you would answer the question, not the actual question itself. By getting a feel for the process, you don’t need to remember all the questions, just the method for answering them. After going through a few questions, you will start to notice some similarities between them, which will give you a better understanding of how to approach questions of similar type during an interview.  

  • What extracurricular activities should students consider?

Students should consider whatever extracurricular they find enjoyment in. Companies these days are looking for well rounded individuals, not just those who can program. They look for people who have interests beyond the world of programming. Therefore, by participating in clubs and extracurricular activities, a student shows that are capable of being a multi-dimensional person. In many interviews, companies ask what sports you played in high school/college and what you do when you are not writing code. These companies have many events (such as video game tournaments and volunteer opportunities) and intercompany sports leagues. These are ways for employees to become better friends, and companies are looking for candidates who would be willing to participate in such events. By joining clubs and doing extracurricular activities in college, you show that you would be willing to interact with workers outside of work (just as when you join a club you interact with your classmates outside of class).

  • How can students take advantage of networking and alumni relationships?

Networking and alumni relationships are one of the biggest advantages of going to Notre Dame. Notre Dame has one of the strongest alumni networks that can really help getting your feet in the door as most Notre Dame alumni are happy to help a fellow domer out. These relationships should be used to ask for advice but never to ask for jobs. Instead of just asking directly for jobs, it is better to try and learn from the alumni and get to know them better. Doing this can lead to jobs, but asking directly for jobs puts the connection in a tight spot and is rude. It is much better to try and learn from the alumni and networking rather than ask them directly for a job. By cultivating relationships, you can have a bunch of great networking later on that can help with jobs, advice, and even promotions down the road. These relationships should be friendships rather than a checklist. If done correctly these networking and alumni relationships can help students their entire professional life and can be really beneficial to the professional and social life down the road.

  • How should students approach negotiations or contracts? Are there any pitfalls they should look out for?

The biggest problem with negotiations and contracts is getting too excited about getting the first job offer. The first offer is the biggest one in a lot of ways and while it is natural to be excited about it, make sure that you are looking at the contract and reading through everything that they send you. Getting too excited can lead to accepting the contract without reading it as well as not negotiating on things that are important for the student. Other important considerations to remember with the negotiating of contracts is to be respectful. The company is offering you a job that you want, and while you may want more money or something else, ask for it respectfully which should help it be more likely to be granted, as well as just keeps both sides civil. Other than these few things, I think it is important to remember the reason that you applied for that specific job and not make it just about the money, trying to accept a job that you would enjoy.

  • Anything else you wish you knew before you went through the whole process?

Interviewing and applying for jobs is a stressful process, but a necessary one. It is a good window to see what the real world is like while still in college, by giving you a chance to interact with and ask questions to a person working in a field you are interested in. Thinking of it as such makes it less intimidating. Treating it as a conversation with someone interesting will make you more relaxed and allow you to speak more freely and do better. As far as the technical interview is concerned, the questions can be challenging, but for the most part, they are fun problems to solve. So, approaching them as fun brain-teasers rather than problems on an exam will also allow you to think clearer, and help you do better.

Overall, it is important to keep in mind that you study in one of the best colleges in the country. You are absolutely qualified. So don’t be intimidated, make sure to be relaxed and have fun and I’m sure you will do fine.

 

Compiled By:

Vaishnav Murthy, Calvin Rutherford and Kevin Boyd

From the readings, what is your opinion of Boeing’s handling of its computer security employees? Were these workers ethical in their leaking of information to the public? Was their firing rightful and warranted? Should these workers have been protected under the Whistleblower protection laws?

In 2006, Boeing clearly had some computer security problems. If the Seattle P-I report was to be believed,  in addition to having significant holes in their system, their methods of auditing were also faulty. It is also believed that they pressured their employees into producing good results for the audit purposes, and subsequently ignored Deloitte’s external audit, when auditors such as James Estep found”a control rated as “passed” that he had rated as failing”. It is unclear whether they were doing any or all of this on purpose.

In the midst of all of this, two internal auditors were fired by Boeing because they exposed these failings to the media. One of them said that after repeated warnings to the upper management followed by unfair treatment he was forced to go to the SEC and the media about his findings. However, instead of trying to fix their broken computer security, they went after anyone who was exposing their weaknesses. They fired the auditor and allegedly, “[spied] on other employees to ferret out whistle-blowers by videotaping workers and reading their e-mail”.

Before making an ethical judgement on whether it was OK to fire these employees, it is important to present both sides. Firstly, this decision to fire the employees was held up in the 9th US Circuit Court of Appeals. Secondly, it is difficult to figure out whether these rules were actually broken because certain employees felt that the auditors “kept changing their minds about what they wanted and were too eager to fail controls”. Also, as IT worker Michael DuPas claimed, none of the people working on the audit agreed on anything, which made it hard to categorize problem areas.

With all this in mind, I feel that Boeing certainly did not treat the Computer Security workers well at all. When these issues were reported, they should have taken the claims seriously and implemented changes to their security process. The leak potentially allowed the personal data (unencrypted) of more than 400,000 employees to be stolen. This clearly shows flaws in their computer security, which potentially could have been avoided if they had taken claims of weakness in their security seriously, and had treated their security auditors better.

However, the conduct of the auditors after that was not ethical. They should have followed the law if they wanted protection and only reported to the authorities about Boeing’s security failings. The step to report to the press was not necessary or the right thing to do. By reporting to the press they publicized the whole debacle, thus tarnishing Boeing’s image and making them an even easier target for data thieves and malicious hackers. Given their conduct, I believe that Boeing was well within its rights to fire an employee who caused their company such public harm, just as it as the right to fire employees who hurt the company by being inefficient at their job. Given that the auditors job was to help strengthen Boeing’s security, and their actions had the opposite effect, Boeing was certainly right to fire them.

On the question of the Whistle blower Act, and whether it should have protected these employees, the language of the Act in question is filled with subjective qualifiers – “gross mismanagement”,   “gross waste of funds”, “abuse of authority”, “substantial harm to public health or safety”. This shows that this law was meant to be up to the interpretations of the Court whether a certain violation qualified as any of these. The 9th Circuit Court of Appeals in a unanimous decision ruled that Boeing’s potential negligence did none of these things. Hence, I would also say that they clearly should not have been protected under the Whistle-blower Act.

To sum up, I think Boeing acted poorly initially while dealing with their security employees, and subsequently the employees acted poorly by going to the press, making it necessary for Boeing to fire them. The employees exercised their right by going to the court which sided with Boeing, thus reaffirming that Boeing was in the right for firing these auditors.

 

From the readings and in your opinion, is the lack of diversity a problem in the technology industry? Is it something that needs to be addressed or is it just a (possibly unfortunate) reality?

Diversity in the tech industry is one of the most trending hot topics in today’s conversation. Before addressing if this is in fact a problem or not, we must look at certain facts about the industry. The San Francisco area (known as the Silicon Valley) is made up of a large Asian and Caucasian population, especially in the areas surrounding the headquarters of large tech companies such as Apple. It follows that there must be a largely skewed Asian and Caucasian makeup of employees that work in these companies as well. It is also a well known fact that in the Valley the gender distribution is also very skewed. Fortune recently ranked big tech companies (http://fortune.com/2015/07/30/tech-companies-diveristy/) by the percentage of women employees they had, and eBay came in in first place at 42%. This may not seem bad, but the drop is steep following this. Facebook, Google and Microsoft come in 4th, 5th and 7th place and have less than 30% women employees. These facts make it easy to see why people who belong to these under-represented groups find it intolerable and want things to change immediately.

There have been several reasons put forward for these skewed demographics. Erica Joy in her piece about The Other Side of Diversity talked about her experience of not really fitting in because there were not too many workers in the Tech Industry that were African American or women. Hence as an African American woman, she found it extremely difficult to fit in. She asserted that this culture shock would act as a deterrent to women and African Americans to apply for tech jobs. Legand Burge in the piece in Bloomburg Business was of the opinion that employers in the Valley had an inherent bias towards the African American community as evidenced by their non targeting of historically black colleges for recruiting. Eileen Pollack in her piece in the New York Times claimed that the field of Computer Science was simply not welcoming enough to women, which led to fewer women programmers and thus fewer women employees in the Tech industry.

I would like to respond to each of these claims by stating that having been through a similar culture shock (as an Indian student attending a school that is predominantly Caucasian and a 1-2% Indian undergrad population), I disagree that a culture shock is always a negative thing. In my undergrad experience these last three and a half years, it always hasn’t been smooth sailing. Having grown up in a different country I have had similar experiences to Ms. Joy by not knowing the songs people around me liked to relax to, or having not watched the movies or TV shows that people had watched as children, and therefore didn’t understand many of the references they made. Along with the cultural aspect, I also had an accent that made me stick out, along with my obviously different visual features. However, I viewed these not as an insurmountable obstacle, but rather as a challenge. I made sure whenever I heard a reference I didn’t understand I looked it up. Whenever I heard of a movie I hadn’t watched or a book I hadn’t read, I made sure I watched or read them as soon as I could. I soon managed to fit in a lot better. I wouldn’t say I changed myself, because my core personality has remained the same, but I did adjust, and adjust well. I think there are two ways to look at a place where people are different than you, and you feel unable to fit in. One way is to simply be frustrated at the majority of people for not being like you, hoping and wishing that they will change to fit what you are more comfortable with (they never will, and it is rather foolish to assume they will), and then give up. The second approach, which is the one I took, is to realize it is easier to change certain things about yourself rather than expecting several others to all change, and then do the change. The result is I was able to make the most out of my college experience, both academically and socially.

I definitely do not want to come across as harsh or unforgiving to the many people feeling left out either of the field of Computer Science, or the Silicon Valley culture. I certainly do feel that societies for these under-represented minorities do have a place and definitely help. In certain contexts privilege does exist, and so do negative stereotypes. I can’t count the number of times I have been stopped in the middle of a conversation after saying I live in a different country with the inevitable question – “But you speak English so well”. I would also be lying if I said that this didn’t irritate me. However, I did not, have not and will not let this irritation get the better of me. To put this in the context of the several stories I read about that spoke of the massive culture shocks and discrimination women and minorities feel in the tech world, I would say that it certainly is not easy, or even at times palatable. Fighting for change is a good thing. However, it is important to remember that cultures do not change overnight. What is much easier to change is our attitude towards new cultures.

From the readings and from your experience, why is creating startups all the rage at the moment? What are the benefits of creating or joining a startup? What are the dangers or downsides? Did joining or creating a startup factor in your employment decision or do you hope to create one in the future? Why or why not?

The readings on this topic had some interesting theories on what the appeal of either founding or joining a startup as an employee. For example, the comparison article between the pay and culture of a startup vs a bigger company presents three compelling differences that are often cited to make startups seem more favorable than bigger companies. Firstly, there is a belief that startups provide the opportunity to earn the equivalent of a lifetime of earnings in a relatively short amount of time. Secondly, many people believe that a startup will allow you to do more meaningful and fulfilling work than a bigger company. Lastly, there is a belief that you will be able to learn and experience more by working at a startup than by working at a bigger company. There are conflicting opinions on each of these beliefs. Giants in the startup field, most notably Paul Graham, endorse this opinion. However, many other people, such as the author of this piece, try to debunk each of these three beliefs. While the author does not slander startups at all (in fact he recommends that startups are better for certain people), he defends the experience of working at a bigger tech company.

I have had probably the most unique opportunity of working at a startup followed by working at a bigger tech firm, so I feel like I am in a good position to comment on the difference in cultures. I would like to start by giving my take on why creating startups is so popular at the moment – it is because the idea of being your own boss appeals to people, especially to the so called ‘millennials’, of which I am a part.

Before giving my take on this idea, I would like to list the benefits of working at a startup. I worked at one two years ago and thoroughly enjoyed my time there. From the perspective of a young employee, startups are small. This gives you transparent access to the upper management of the company, who more likely than not are very involved in your project. For example, the startup I worked at was still in its early stages, so my little office space was in close proximity to the CEO. I would give him and the other senior management regular progress reports on my project, which is a valuable skill to have in the workplace. Another benefit is the almost immediate transparent impact your work has on the company. For example, my code was used directly in the product that was being presented to potential angel investors and venture capitalists. This gave me an incredible sense of responsibility, and certainly increased my motivation.

As I said earlier, I think the biggest appeal of the younger generation to the startup culture is being your own boss and answering to no one. However, as depressing as it may seem, there is no one who doesn’t have people they must answer to. If you work as an employee at a startup, there is the upper management to answer to. If you are in the upper management, you have the CEO to answer to. If you are the CEO, there are the investors to answer to. The investors (particularly the VCs) themselves have people they in turn answer to. So, this motivation of being your own boss is misguided, and once people realize this, it could affect them regularly, which is, in my opinion, a potential negative of a startup. However, probably the biggest potential negative of a startup is how much it consumes you. If you are not careful, you could easily equate your life to the startup. You are the company and the company is you. However, as any successful entrepreneur will tell you, it is imperative that you draw the clear distinction between those two entities. To succeed, you need to put your blood, sweat and tears into the company, but at the end of the day still be able to distinguish between yourself and the company.

So the question arises again, why should people go down this path? I agree in principle with the author of the comparison piece in that big companies can provide you with equal or better pay, opportunities and experience. So what in the end is the appeal of a startup? I believe that although the chances of succeeding are slim, when it works, there will be no better feeling. I can’t think of a better form of happiness than to see your idea succeed as a company in the real world. This is why, creating a startup and trying my hand is certainly in my future plans.