Skip to main content
5 answers
8
Asked 2102 views

what is the culture and expectations in the work space of a software engineer?

what would be the scenery in the work space of a software engineer?
How do you communicate with your coworkers?
What do you do on a daily basis?
What is the culture like? #computer-science #engineering #computer #software

+25 Karma if successful
From: You
To: Friend
Subject: Career question for you

8

5 answers


2
Updated
Share a link to this answer
Share a link to this answer

Pran’s Answer

It totally varies from company to company, and sometimes even group to group. Some expect head-down, don't-rock-the-boat silent coding. But the good ones (IMHO) not only accept but expect and demand innovation, breaking outside the comfort zones. Some groups communicate with lots of meetings, others by email, others by text and IM. All within the same company. Go across the street and you'll see something completely different. Since I like interacting with co-workers, I arranged a bi-weekly colloquium series that's been pretty well received. In other companies I've worked at, the very idea of such a thing would get weird looks and comments about how I already have work to do, and so does everybody else, so why waste time on that?


One standard for software companies seems to be a relaxed dress code. Not just casual Fridays, but XKCD t-shirts any day of the week. I have a shirt that says "Never underestimate the power of stupid people in large groups" with a picture of the Capitol building on it; I wear that about once a month and people love it.


Basically, your job at any interview (software or otherwise) is two-fold. First, sell yourself to the company. Second, evaluate if the company is good for you. For me, money is a part of that equation, but whether or not I'd like working there is more important. And you can only see that by visiting the company, because their web presence or what they say on the phone can only partly cover it. You have to see what the people are like in their work environment. I just today put up a sign saying that this is a velociraptor-free workplace. I have Dr. Who gear prominently displayed in my cube. One of the managers down the hall has a 4' cardboard cutout of a Star Wars character in his office. When I interviewed here I noticed on the director's door a "Unicorn Rocket Pony" with rainbows spewing from it, and on the ceiling there was a plastic cat lurking above a manager's desk. At another company, an interviewer mentioned that they had 11 levels of employee and 7 levels of management... at an 80 person company. The walls were bare, the cubes small, and nobody talked to one another. Culture varies so greatly from company to company that there is no standard, and the only way to evaluate it is to see it in person.

Thank you comment icon Agreed. FYI, "XKCD" refers to the tech-savvy comic strip you can read here: xkcd.com Jared Chung, Admin
2
1
Updated
Share a link to this answer
Share a link to this answer

Steve’s Answer

People, not companies, create software. The best companies create an environment that helps engineers do their best work. The worst companies treat developers like interchangeable factory-workers who can easily be replaced.


Each office is unique but there are a few common aspects of software engineering workspaces. The day begins with a "stand-up" meeting where each engineers describes briefly the tasks for the day. This is to coordinate everyone's efforts and ensure that two people aren't trying to work in the same part of the product. In particularly we look for things are are "blocking" us--preventing us from completing a days assignments.


In most cases, engineers are using some agile approach to task assignments, meaning they pull an open item from a queue of work to be done. Often this is done with physical index cards or sticky notes--the engineer literally removes the card from a "to do" list and moves it to a "work in progress" list.


Throughout the day, an engineer may give or receive advice with another but will usually work alone, often with headphones playing music or white-noise if they work in a public area.


Culture differs widely. The best cultures have a team-orientation, preferably teams working together in a shared space so you can easily share ideas or recommendations.

Thank you comment icon I disagree with the part about stand-ups and agile being standards. That seems to be more prevalent at start-ups than at larger companies. I always thought that both were sort of hokey fads, and they've never been in use anywhere I was permanently employed. Pran Mukherjee
1
0
Updated
Share a link to this answer
Share a link to this answer

Wes’s Answer

This is a great question! I have worked in multiple companies and on multiple teams, so I can tell you a bit about my experience and that will hopefully give you a better idea of what to expect.

Most of the places I've worked have a highly collaborative culture. Working in a collaborative way is an excellent way to work for a few reasons:

  1. You end up with a better result because not one person has all the answers.
  2. You learn new stuff and can teach stuff as well!
  3. You feel supported by your team.

On a daily basis, it depends on what software development practices your team adopts. If you adopt an agile framework, you'll likely be participating in some rituals like stand ups and retrospectives. These rituals help the team move forward in an iterative fashion which allows a business to adapt to the ever-changing industry. Stand ups are meant to help you plan your day and let your teammates know what you are working on so you don't accidentally work on the same thing.

Sceneries differ from place to place depending on the culture. Some organizations are fully remote, so you could either work from home or from a co-working space. If you are in an office, it will likely be an open office space. Most people will be working side by side and won't necessarily have their own office. So, if you work better in quiet environments, sometimes your only choice is to have headphones to block out conversations that might be distracting.

Wes recommends the following next steps:

Check out Glassdoor for reviews of companies to see what other employees are saying about their culture and space.
0
0
Updated
Share a link to this answer
Share a link to this answer

Michael’s Answer

Culture in a company varies wildly from company to company, and depends a lot on the size. Bigger companies will have cultures closer to the "normal" business culture where people wear mostly regular clothes, show up on time, get what they say they are going to get done done, and generally have a good time with each other. Smaller companies can be all over the map with respect to dress and expectations around language.


In all companies, you should expect to be treated with respect, and should always, always treat others around with respect. Derision or belittling your colleagues is not only harmful to your career, it can also hurt the company around you in big ways.


People in companies communicate a lot via email. Some companies use computer chat systems to talk to each other. It all depends on the company and how they see the best way to get the information about what to do out to those that need to do it.

0
0
Updated
Share a link to this answer
Share a link to this answer

Matt’s Answer


  1. The "scenery" is typically open-concept cubicles and desks. A sea of monitors and keyboards. (Size of the sea depends on size of the company.)

  2. Communication happens verbally in meetings and conversations. And written communication happens via email, documents, message boards / forums, chat systems and whiteboards.

  3. The typical day of a software engineer consists of a) what am I trying to build? b) how am I going to build it? c) let's build it and d) let's test it. Use the specifications (that come in many forms) to make a plan, then execute on the plan (writing code) and test if what you wrote meets the specification. There is a mix of meetings, 1-on-1 conversations, email, phone calls, IM chats and solitary or pair programming sessions.

  4. Culture is one of the biggest variables. The best cultures I've worked in have everyone working on something together, not at odds with one another. There is a brisk tempo, but not so fast as to make (too many) mistakes. People know their roles, know the strengths of themselves and their colleagues, and work to collaborate to build something great. The culture should be lighthearted at times, and serious at other times, depending on the circumstances. And, as other folks have said, must be grounded on respect and trust.

0