Jump to content

  • Log In with Google      Sign In   
  • Create Account

FREE SOFTWARE GIVEAWAY

We have 4 x Pro Licences (valued at $59 each) for 2d modular animation software Spriter to give away in this Thursday's GDNet Direct email newsletter.


Read more in this forum topic or make sure you're signed up (from the right-hand sidebar on the homepage) and read Thursday's newsletter to get in the running!


What is a day like in the life of a programmer?


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
17 replies to this topic

#1 Relutap   Members   -  Reputation: 125

Like
1Likes
Like

Posted 14 March 2014 - 08:15 AM

Programming, and game design both interest me greatly.

I am unsure if this career is for me.. or should it remain a hobby.

 

Some questions that come to mind...

 

On average.. how much line of code does a programmer write per day?

How structured is it... Is the programmer told what classes to code etc.. or is expected to figure out what needs to be done?

 

If anyone knows any good articles, books, or videos that show a day in the life of a programmer, I'd love to see it.


Edited by Relutap, 14 March 2014 - 08:17 AM.


Sponsor:

#2 arka80   Members   -  Reputation: 1063

Like
6Likes
Like

Posted 14 March 2014 - 08:53 AM

There's not such a thing like "## lines of code per day". 

 

I work in a small company, so I need to be the analyst, the developer and the tester. In such a condition I write lot of code every day, solve problems, deal with database issues, talk with customers at phone etc.

 

Previusly I worked on a big company. Every 2 or 3 days we have a meeting in which a guy told us what to develop. I was responsible of a small piece of the whole code. There was another group of guys who make the tests on our work and compile a bug report. There was a combo with my name under the "Assigned to" label smile.png .

 

Two very different ways of work.


Edited by arka80, 14 March 2014 - 08:54 AM.


#3 thade   Members   -  Reputation: 1652

Like
3Likes
Like

Posted 14 March 2014 - 09:00 AM

I'm a career software engineer. There's three types of things I do at work during a given stretch: I fix/modify/update old library code (stuff that I didn't write and is from the late 90s), I design/build/modify modern code (new products that we're actively developing), and I do non-software engineering tasks (corporate overhead like expense reporting, reporting on task progress, helping with documentation for our software, and dealing with "escalations", which are customer issues with the software that tech support cannot figure out). I can't really measure my work output in "lines of code per day" because sometimes it's "Hundreds of lines" and other times it's "zero lines, but I'm still doing software engineer work".

 

That said, I do not work in games, and there's a pretty succinct reason for this: my understanding is that you *really* have to want it, because it's very grueling. I'm going to be a bit reductionist here in the hopes that somebody who works in the industry today pipes up and corrects me...but here's why I'm not in the game making industry: you are at either one of two kinds of dev houses which each have a common theme I do not like.

 

Big AAA Publisher-owned House like any house funded by EA or Sega, you will find yourself silently expected to work 80+ hours a week, at times opting to sleep under your desk, seldom seeing your family. If you're not willing to do this, they find some contrived reason to fire you as you are very easily replaceable: there are lines of programmers out the door that really, really want to make games and are willing to sleep under that desk you're suffering on. (Also, the pay is crap...for a software engineer.)

 

Small Indie Houses like inXile or Fullbright treat their employees WAY better; they're not going to be mean to you or contrive reasons to fire you if you need to get home to your kids, but you feel more invested and still have to sleep under that desk, because if you don't make deadlines you and your coworkers go hungry. The deadlines are softer for independents, but still there because that money WILL run out eventually so you NEED to sell units. (Also, the pay is crap...for a software engineer.)

 

Given one option or the other, I'd definitely push to get into a small indie shop, but there's that theme: I'm working a LOT of hours that I'm not spending with friends and family. I'll never forget Jake Solmon's (Firaxis, lead designer on XCOM: Enemy Unknown) last interview where he said that he'd missed the first year of his baby's life. I do not want that to happen to me.

 

Also, the other theme I mentioned in parentheses up there: I work 40 hours a week, 50 hours when deadlines loom, which is less hours per week than a game dev. Also, I'm paid a much higher salary than your average game dev for my level. So...less hours a week plus more money for that time is a no-brainer for me. I'd love to build games, but I don't want it so bad that I'm willing to sacrifice time with my friends and family for it. I will build small little projects at home, most of which are never finished and nobody sees them, because I really enjoy thinking through problems and solving them.

 

If you want to do game dev professionally, you have to really WANT it. But if we're just talking non-game industry software work, that I recommend. I love it. smile.png


I was previously serratemplar; a name I forfeited to share a name with an angry rank-bearing monkey.

http://thadeshammer.wordpress.com/


#4 Olof Hedman   Crossbones+   -  Reputation: 2955

Like
6Likes
Like

Posted 14 March 2014 - 09:20 AM

I hear this 60-80+ hours of work etc is a myth, maybe it once was like that, but that most studios now make sure their employees are healthy, its just better for business in the long run...

 

Personally, I've only worked at one small studio, and before that one smallish (150 ppl) software company with focus on ui design and tech, so don't have much to compare with, but  I've never been expected to work more then 40h/week, not even during "crunch".

I have gotten in some trouble for "working too much" though...

 

It's true that the pay might be a bit less then I'd have in a big corporate software company, but on the other hand I have a lot more freedom in how and where I do my work.

And I usually can get off work for a day or a few just giving notice the day before. (they get a bit cranky if I just mail them in the morning... )

 

And no brain-dead processes and corporate bullshit that sap the life out of you... tongue.png

(I've had my share of it being a contractor for most of the major mobile phone manufacturers..) 

 

 

For me, a day mostly is writing code, ticking off stuff from my todo-list, finding issues and writing new stuff on my todo-list.

Then discussing with my colleagues, or they come and ask me about something.

Someone shows a demo of what they are doing, and people give feedback...

Then if needed, some head into a conference room and discuss something in detail.

Then we go back and code some more, or research something, or draw some stuff on a paper...

Then repeat.

 

No-one tells me exactly what to do, its more along the lines of "This doesn't work, can you find out why and fix it?" or "Wouldn't it be fun if you could do X in the game? lets try it" etc.

My current task is "Port this game from iOS to Android and OSX" and I have a 3 months to do it. (well, it was kind of my own idea... )

They do expect me to show some progress in the meantime though, not just disappear for 3 months smile.png

Plus, I'm also involved in the design process of our next game, and constantly give feedback on others work, and help them when they ask.


Edited by Olof Hedman, 14 March 2014 - 01:57 PM.


#5 thade   Members   -  Reputation: 1652

Like
3Likes
Like

Posted 14 March 2014 - 09:25 AM

Heh. :) I do have that type of flexibility, and I think that's common (at least all of my engineer friends seem to have it)...but, what you say about corp bullshit sapping life...yea, that's definitely a thing, haha.


I was previously serratemplar; a name I forfeited to share a name with an angry rank-bearing monkey.

http://thadeshammer.wordpress.com/


#6 DareDeveloper   GDNet+   -  Reputation: 978

Like
1Likes
Like

Posted 14 March 2014 - 10:30 AM

It varies a lot. Often there are projects that characterize several weeks or months.

 

I wrote something on the topic, mostly for my cousin ...

http://izitforyou.blogspot.de/

 

It also depends on how much you are shielded from non-programming tasks.

 

Don't underestimate

1.) the research

2.) fixing environment problems / toolsmithing

That is especially true if you work for a smaller company.


Edited by DareDeveloper, 15 March 2014 - 12:42 PM.

Given enough eyeballs, all mysteries are shallow.

ProcGames.com


#7 PaloDeQueso   Members   -  Reputation: 293

Like
3Likes
Like

Posted 14 March 2014 - 11:32 AM

I often describe my day simply as such:

 

40% research/reading

40% conversation

20% coding


Douglas Eugene Reisinger II
Projects/Profile Site

#8 GuardianX   Crossbones+   -  Reputation: 1527

Like
3Likes
Like

Posted 14 March 2014 - 11:55 AM

I work at relatively small game making company. We are making the flash games for social networks right now. I work approx. 40 hours/week with flexible work hours. My day consists of:

1. First of all, the cup of the green tea xD

2. I have a small conversation with our leading programmer in highly friendly environment about things we need to do/things we want to add to our game in future.

3. I go to my seat right at the big window through which I can enjoy watching one of the biggest rivers of my country.

4. I think about things I have to do today, plan things etc. For example, I can have a task which I should accomplish within one week, so I focus on it.

5. Our company is small and new, so we don't have advanced development techniques and a lot of our work is not automated at all. So I usually test the new functional manually (not that I even know how to do decent TDD with AS3, where everything is a sprite and logic is highly coupled with views).

6. Occasionally I watch inspirational gamedev videos or read something I like. Usually it happens during my lunch break.

7. Since I'm very lazy to wake up, and I really like to do stuff at nights, my work starts at 12pm and ends about 20pm =)

 

I'm new in gamedev, but so far I like it so much.

 

Regarding your questions. Well we don't measure the productivity by the lines of code written per day, so that number is completely unrelated. Usually it is the best practice to write less, but do not hurt lucidity of the logic behind the code, obviously. In our company we are not restricted by the numbers of classes you should create to complete your task - you just do what you think you should do to accomplish your goals without breaking everything =)


Edited by GuardianX, 14 March 2014 - 12:04 PM.


#9 warnexus   Prime Members   -  Reputation: 1504

Like
1Likes
Like

Posted 14 March 2014 - 12:34 PM


I'm new in gamedev, but so far I like it so much.

 

That is pretty sweet that someone new in gamedev can work in a small game making company. I'm curious how did that happen? Was AS3 the only requirement?



#10 Karsten_   Members   -  Reputation: 1655

Like
3Likes
Like

Posted 14 March 2014 - 12:42 PM

It might also depend on how much of a purist you are. Where I work, sometimes instead of solving a problem correctly, there is quite an undesirable trend of "just grab a plugin and hack round it's failures". This leads to a really crummy and unportable codebase and is not very enjoyable to work with and no-one has any real sense of ownership or care. Luckily the company is also sponsoring me for my PhD so I always have that work to fall back on if I can see a project implementation going this way ;)

However, sometimes the project at work involves a team of like-minded individuals who don't mind implementing a bit more code to get things "right", then it can be a great laugh (and the output is of a much better quality).

So it really depends on the specific company, their policies and their existing employees that really makes the difference to whether it is just as fun as coding as a hobby.

Edited by Karsten_, 14 March 2014 - 12:52 PM.

Mutiny - Open-source C++ Unity re-implementation.
Defile of Eden 2 - FreeBSD and OpenBSD binaries of our latest game.


#11 Sunsharior   Members   -  Reputation: 524

Like
1Likes
Like

Posted 14 March 2014 - 06:06 PM

I work in a small and "family"-like software compagny. I do not currently program video game at the office, but rather medical softwares. I do have a video game side project that i develop alone, on my free time.

 

Since we're a small team, i often have to do both programming and analyse.

 

Basically, my days goes like this:

 

When i arrive at work, we hold a very quick meeting with the devs and project director to see when has been done the eve. Possibles issue are discuted there, along with solutions.  This take at most 15 minutes.

 

I always have tasks assigned via Jira, so i know what i have to do ahead of time. Normally, what i have to do is documented by the analyst. Of course, not "everything" is deocument, so if issues arise, i need to voice them / thinks of a solution. This process is very sastifing, as i act at the analyst's back-up, if he screw-up (which happens sometime).

 

To be honest, i don't really count the line of code in a day. It can fluatuate a lot. I normally code about 50% of the day, do research 30%, speak with my coleague 10%. The last 10% is administrative work not directly related to coding, like meetings, filling my timesheets, documenting stuffs, etc... You could write 10 line of code in a whole day and be considerer still be considered very productive.

 

Then, when i'm out of work  i usually keep coding 2 to 5 more hours in the evening on my personal video game project. I work in a software compagny, but my real goal is going to a video game compagny. This personal project is very nice on a CV (if completed). Also, i could make somes money out of it, but that's not really my primary goal.


Edited by Sunsharior, 14 March 2014 - 06:07 PM.


#12 walsh06   Members   -  Reputation: 662

Like
1Likes
Like

Posted 14 March 2014 - 06:24 PM

Ill add my input just to add some different perspective. Im currently an intern at a company that provides services to games. Usually I come in and check email at the start. I dont usually take the support tasks as Im new but others will take them and work on them for some portion of the day. I look at my current tickets and work on them for appropriate hours for each for the day depending on priority. Then I have a scrum meeting at the end of the day with the rest of the team where we look over the board and discuss the tasks and quickly prepare for the next day. When I finish a ticket a new one is assigned to me and I seem to have 2/3 going at a time depending on how large they are. 

 

For the tasks some time is spent thinking about how Ill tackle it or discussing it with someone who knows more about the area of code Im working in. Then spend some time making my changes, and depending how far along I am, testing those changes to see if they work. Or just implementing the unit tests to see if they work. Ill run into problems when working with such a large existing code base where Ill have to talk to someone to just understand how a certain section is working because I dont want to make a small change that breaks the whole thing. Once a task is done put it up for review with my team and then make changes that they suggest. 

 

Then of course theres random chats, food time, beer o clock and other such fun stuff that are in the day. Some variation of those make up my day.



#13 GuardianX   Crossbones+   -  Reputation: 1527

Like
0Likes
Like

Posted 15 March 2014 - 04:56 AM

 


I'm new in gamedev, but so far I like it so much.

 

That is pretty sweet that someone new in gamedev can work in a small game making company. I'm curious how did that happen? Was AS3 the only requirement?

 

 

Yeap. And I had to write the small game with the Starling framework to demonstrate the way I approach to problems, if my code is clean enough etc.



#14 timothyjlaird   Members   -  Reputation: 404

Like
0Likes
Like

Posted 15 March 2014 - 10:40 AM

Programming, and game design both interest me greatly.

I am unsure if this career is for me.. or should it remain a hobby.

 

Some questions that come to mind...

 

On average.. how much line of code does a programmer write per day?

How structured is it... Is the programmer told what classes to code etc.. or is expected to figure out what needs to be done?

 

If anyone knows any good articles, books, or videos that show a day in the life of a programmer, I'd love to see it.

 

I work as a programmer for a company that automates the process of pulling real-time and historical data from gas flow computers and PLCs over any sort of network (sorry not a game programmer). Graphics is my hobby though.

 

How much code per day?

It varies...but usually the volume is irrelevant. Its quality. Usually its tweaking existing code or adding features on top of it. Writing stuff from the ground up is pretty rare. So not a lot of code. More analysis. One or two lines of code is often the difference between something that works and something that does not.

 

How structured is it?

We have a list of tasks that are stored on a server. The stakeholders (sales and top tier management) consult my boss and build/maintain the list of tasks. If there is something urgent my boss will assign the tasks...if not the developers pick them. We are very customer centered so if you work on a project you are still expected to be able to take a direct call from a customer on it. Developers used to always take technical support calls whenever something came in...we now have some dedicated people for that but it still happens when there is either overflow or a problem they could not solve (or it requires code access). So organized chaos to answer your question.


Edited by timothyjlaird, 15 March 2014 - 10:43 AM.


#15 cardinal   Members   -  Reputation: 904

Like
0Likes
Like

Posted 18 March 2014 - 12:11 AM



Big AAA Publisher-owned House like any house funded by EA or Sega, you will find yourself silently expected to work 80+ hours a week, at times opting to sleep under your desk, seldom seeing your family. If you're not willing to do this, they find some contrived reason to fire you as you are very easily replaceable: there are lines of programmers out the door that really, really want to make games and are willing to sleep under that desk you're suffering on. (Also, the pay is crap...for a software engineer.)
 

...

I'll never forget Jake Solmon's (Firaxis, lead designer on XCOM: Enemy Unknown) last interview where he said that he'd missed the first year of his baby's life. I do not want that to happen to me.

 

While I wouldn't go so far to say that the famed 80+ hour work week is a myth, it's definitely a gross generalization. I work at a studio tied to a major publisher and can't even remember the last time I was even asked to work overtime. That isn't to say I don't work any overtime. My team are professionals and we do what we need to do to get the job done. With that said, I am one of the younger/more junior people on the team (at 31 with 8 years professional game experience), so we have a lot of experience to draw on these days.

 

There are teams in my company that are shit shows (I have worked on some in the past). There are teams working on great AAA titles all over the industry that kill themselves to ship their games. I have a lot of friends who work at startups (games or otherwise), and kill themselves more than when they were at big companies. At the end of the day, you need to take care of your responsibilities. Also, people change. I gladly worked myself to the bone in my 20s. Now that I have a daughter, I am not willing to work weekends (outside of around important milestones if something explodes), and no longer work more than 50 hours a week.



#16 frob   Moderators   -  Reputation: 22783

Like
2Likes
Like

Posted 18 March 2014 - 12:52 AM

I'm a career software engineer. ... I do not work in games, and there's a pretty succinct reason for this: my understanding is that you *really* have to want it, because it's very grueling. I'm going to be a bit reductionist here in the hopes that somebody who works in the industry today pipes up and corrects me...but here's why I'm not in the game making industry: you are at either one of two kinds of dev houses which each have a common theme I do not like.

Big AAA Publisher-owned House like any house funded by EA or Sega, you will find yourself silently expected to work 80+ hours a week, at times opting to sleep under your desk, seldom seeing your family.

I have worked both inside and outside games.

I found that quality life in games is actually a bit more reasonable. People actually TALK about quality of life issues.

When working on business software, I was expected (=required) to work two Saturdays a month helping with deploying software around the business. Usually I could call in and everything was okay. Sometimes I needed to be there physically rather than over the phone. Sometimes I needed to be there for a full weekend. Very often I was expected to put in longer hours, and I was occasionally chided for arriving and leaving on time.

Obviously in games you still need to be professional about it. Just like any other industry, the software must ship eventually and there is usually a big push near the end, usually lasting under a month, where people end up staying late several nights to clear out their bugs and hit the deadline. Some projects are well-managed; I have worked on several games where extra hours were not required generally (although some QA people worked extra). Some projects suffer from bad management which includes poor planning, project "pivots", bad estimates, and insufficient staffing. The bad projects I have watched decay were almost universally from bad management decisions. Some projects suffer from team members that spend development days watching youtube instead of developing.

My best bosses, even during crunch time, have been strict on QoL. "8 great hours, then go home" was one mantra. If our manager caught someone watching videos, he asked them if they were planning on staying late to get their 8 hours in; the few people who previously wasted a lot of time surfing the web very quickly became more active contributors or were quietly moved on. Under that boss we didn't have a crunch at the end of any project. Another manager (a fairly bad one) refused to cut features, told designers and producers "yes" to everything, and was hated by the development team. His teams routinely stayed late. I had the misfortune of being assigned to his project for a year. I continued to work my "8 great hours". When I was invited to work extra hours, I politely declined, reminding him of the studio's policies (and the state's well-documented law) that they cannot mandate overtime for salaried positions without paying overtime because by statue we were all non-overtime-exempt salary employees. The exempt and non-exempt status can vary by many factors (especially state-by-state law!), but many white-collar workers are actually non-exempt although employers claim they are exempt. Most artists do art to spec and are non-exempt even when making a salary. Programmers in some states that do code-to-spec are non-exempt because code-to-spec is not a creative work; in CA it is based on salary as well, currently about $83K/year. There are few penalties for it when the business gets caught, normally just paying a few months' back wages and no real penalty, so many employers will just not pay and hope you never notice. I paid a visit to HR and asked for clarification that requiring overtime meant paying 1.5x wages because we were non-overtime-exempt salaried employees, and was told that was correct, were were non-exempt. The boss was called and asked to join me in the HR office to hear his side, including his passionate pleas that team members work unpaid overtime. The HR manager thanked me, and the following day the boss changed his tune about requiring overtime and apologized to the team. The new tune was that although salaried workers could volunteer overtime if they wanted, they would not be paid extra for it and would not be penalized in any way if they didn't work it, and that those who had been putting in extra hours would be getting some extra money for their previous overtime but that was now over. The day after that, features started to get cut. Most of us are professionals and are passionate about quality work, and will put in the work reasonably necessary for the job... as long as we are paid for it.

I have found that each studio is different, each project is different, each time within the project is different. Modelers may have tons of free time but animators are struggling. The combat system programmers may take long lunches and leave early, but the overworld team may arrive early and leave a little later.

I have almost always had better QoL inside the games industry than outside it.

Check out my book, Game Development with Unity, aimed at beginners who want to build fun games fast.

Also check out my personal website at bryanwagstaff.com, where I write about assorted stuff.


#17 fir   Members   -  Reputation: -456

Like
0Likes
Like

Posted 18 March 2014 - 04:33 AM

I often describe my day simply as such:

 

40% research/reading

40% conversation

20% coding

 

close to my own - depend what you mean by the 'day ' if 8 h

or 16 hours - I got 16 h day work on my own -  i spend a lot a lot of time on research and reading but also freely mixing it with conversation and resting (forums, etc - there research is easier and i could rest which is very important) (this year im reasting more than before, previous years i was focusing more but i was feeling strange and quite noticable overwork simptoms, (now It seem  improved, interesting) )


Edited by fir, 18 March 2014 - 04:51 AM.


#18 catslap   Members   -  Reputation: 35

Like
0Likes
Like

Posted 22 April 2014 - 01:54 PM

It depends hugely on the type of job you have.

 

I'm a consultant, my main project currently is mostly made from consultants.

 

The teams are managed through bidding on tasks on a time to complete basis. New guys don't get to take part, they're usually given over the shoulder jobs or more traditional tasks and closely monitored and helped so it's not overwhelming.

 

The permie guys probably work 42 hours a week, we generally do 37.5, they keep us down as the rates rocket up to double after 38 hours.

 

LOCs doesn't really reflect productivity, I might remove 100 lines and improve the code.

 

If the work is quality related, 2 locs/day might be normal, you'll spend most of your time in meetings reviewing the code, planning the code, modelling the code then liaising with guys around the world who will test the code, then referencing the test results against the model and writing documents to show why they're different. If it's not high quality work you might get to code for maybe half the day, meetings, project discussions and general crap takes up the rest. If you're working for a small games co you might get to code almost all the time.

 

With quality work everything will be mapped out for you, there's very little innovation or autonomy. Non-quality can be hacking away all day long with no-one bothering you and you have almost full control. Where your work interfaces with someone else's that will be defined (or you'll have to define and document it).

 

An average day for me if not flying would be arrive, get coffee and check the overnight test results as I wake up, skim over the version control logs to see who has branched what and what's been merged in. Check the build still works.

Reply to emails regarding the results, usually interrupted by a team meeting to discuss progress and deal with any emergencies (you might get flown out to do something exciting here but usually not, maybe twice a month)

Code for an hour or two until lunch.

After lunch peer review someone's code, or help the testers or calibrators with the new software written from the day. Or assist the hardware guys if something is looking dodgy. Some days are spent doing pure architecture, but mostly not.

There's quite a lot of interacting with non tech people which is amusing but can get frustrating.

 

It can be quite glamorous, usually it's not.

 

The better you are, the less likely it is you'll be coding much tbh, you tend to get pushed up quite quick and away from the development into more overreaching tasks, which can be frustrating, coding can be a rare treat with some contracts.






Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS