So, not to rain on the parade of successes here, but I’ve been looking at web dev job listings for months and have not been very excited by any of them so far. The tasks as described just don’t sound appealing. Are there any currently working developers here that can describe their workday in detail? I actually have a BSCS from years ago and spent much of the '90s working as a developer, but my web dev experience is limited to my Rails projects and the FCC curriculum. I’ve never worked on an agile team and I’m not at all sure I want to. Pair programming feels like torture to me, I doubt I could tolerate regular code reviews, and I have no real interest in contributing to open source projects. Should I just stick with programming as a hobby?
Im interested in this too.
What are you looking for in a dev job? I just started my first dev job in May and am really enjoying it. If it doesn’t sound fun to you though, then maybe a hobby is great for you. It really just depends on your preference.
My typical day consists of me working on cleaning up css code and learning C# to get up to speed with the other developers. I have fixed a few bugs and have enjoyed it. To me it is about problem solving and I really like it.
Not sure if this helps, but good luck in your pursuit, whatever you decide.
You could try your hand at freelance work.
Good question. I know from past experience that the jobs I liked gave me a lot of autonomy - nobody cared too much how I got the job done as long as it worked. I also do far better when I can run a whole project beginning to end rather than contributing bits and pieces. I need to feel like I’m actually building something. Going through the FCC curriculum (and I’ve done all 3 certifications now) also reminded me how little patience I have for design and layout - all I’m really interested in are the clever algorithms.
Here is a day in the life at my current job. My last job was fairly similar but had more meetings and less pair programming-ish stuff.
I usually get in at about 8 (I have coworkers that don’t show up until 10 - personal preference). I check my emails, drink coffee, look at my calendar, start a fresh todo list. If I have an open code review, I check it for comments.
For the last week or so I’ve been working with a couple other developers on a challenging problem. Somewhere around 9 one of them usually comes over to my desk to start chipping away at it again.
At 10 I have my daily standup. It lasts about 15 minutes. Sometimes afterwards I jump into an “after party” where a couple developers talk further about something that was brought up in the standup.
Most days I don’t have any meetings, so I can spend the rest of the day working. Some days this will be all independent. Others it will be all with another developer. Since I just started on this codebase about a week ago, I currently work with another developer quite a bit. Once I know my way around better, I will probably work on my own most of the time, but end up consulting with a teammate fairly often.
On days that I have meetings, it’s typically about an hour. These might be planning meetings, architecture or design reviews, or an informal training from a teammate who has recently used a new technology, tool, or approach.
It feels like at least once a day I’ll waste half an hour fighting with something stupid like my computer deciding it can’t detect my mouse, the wrong version of Java being installed, of a software license having expired.
I’m usually out the door by 4.
Thanks for taking the time to post. Is your work space totally open, or do you have cubicles or individual offices? How do you cope with distractions? Can you work from home?
Can you talk about this problem a little more? Is it a stubborn bug, an architectural change, a complicated new feature, refactoring of some kind? Maybe it’s because I’ve been working alone for so long, but I’m having a hard time imagining how a small team actually divides the work of solving a problem.
I work in a lab that has “quads”. Basically there are large square sections with a person in each corner (with our backs to each other). Individual work areas are pretty large. We all have at least two computers with multiple monitors and aren’t crowded. There are a few rooms/offices available that would have an average of two people in them. I could have chosen one of those areas instead. At my last job I was in a cubicle.
There aren’t too many most of the time. When I get wrapped up in a problem, I become pretty oblivious to the world. I do have noise cancelling headphones though too and sometimes they come in handy. At my last job there were also “focus rooms,” which were small offices you could take over for a day if you really needed to be able to close a door and get some privacy.
Because of the specific nature of the work I do, I have to do almost all of it on an air gapped computer, so there isn’t usually much I can do from home. At my last job I worked from home sometimes and was even supplied with hardware to have a good remote workstation.
So part of the reason we’re working so closely is because one other developer and I are very new to the project and still require some adult supervision. Both this job and my last have been creating web-based user interfaces for hardware, replacing legacy installed software written in C++. For the particular challenge I’ve been working on for the last few days, we’ve been adding a new feature to this product. We’re doing it using technologies which are pretty new to all three of us (to varying degrees). As we’ve been trying to make our new feature work, we’ve found issues with it that have turned out to be larger issues with existing components, so we’ve had to address those as we’ve found them. This has also involved some UX decisions. Because we’re the first ones to do certain things in this UI, we’re setting the pattern for how the team will develop those things, which can involve lively debates. In this case we’re also working with new hardware, so we’ve had to go to hardware people, backend people, and other teams for troubleshooting and advice. Meanwhile, the other 6 people on my team have been working on other stuff for the same project.
OK, this is what I’m really curious about. I can imagine that you’re constrained by the capabilities of the existing hardware and device driver / hardware virtualization stack, as well as the need to maintain all of the existing functionality, but you may have a lot of freedom when it comes to adding new webby, network-enabled, IoT features. Are you and your team responsible for dreaming up new features, or do those requests come from marketing or elsewhere? If you implement a new feature, are you responsible for it all the way through to release? Is this a product you’d actually use in your daily life? What keeps you interested in the work?
The work I currently do is focused on meeting specific customer needs. We do get to work on some proof of concept projects to try to get interest (i.e. money) for something new or different from a customer.
It depends on the scope of the feature and what you mean by the question. Some features may be small or localized whereas others may involve work by people at multiple levels of development or be large enough for multiple developers to work o pieces of it in tandem. In my experience, if you were a major part of developing a new feature you become the go-to person (or Subject Matter Expert) on that feature and it can end up as your baby whether you want it or not.
I get to play with it in the lab…But no. Now I work on stuff for government customers. My last job was for enterprise level storage arrays.
It’s hard. I love software development because you are wrestling with these gnarly or complex or totally alien challenges and then you get the satisfaction of having solved it.
There is a great Quora post I saw one time…
The guy said "I love to program, but I’m not a programmer."
I’m starting to realize why he said that.
I recently got a job as a web / app developer for a small company. Also, I know how much Quincy likes to hear this: 90% of my education came from freeCodeCamp and Udemy. I am 21 years old, and I dropped out of college to pursue this field.
Anyways, I’ve recently begun to somewhat resent my job. A for a few good reasons:
1.) Cubicles suck. You know those movies where everyone is sitting in a cubicle, then it zooms in on the main character, and he looks like a drone? Yeah, I’ve started to become that and I hate it.
2.) Waking up at 6, leaving at 7, arriving at 8, breaking at 12, leaving at 5, and getting back home by 6, means I spend 12 hours each day worrying and doing work related things. That’s my entire day. That, is frankly, BULLSHIT.
3.) I haven’t written a single line of code. I’ve been there for 2 weeks. And as of currently, my manager told me I won’t be writing any code for 2 months.
4.) You have NO creative freedom at the job. EVERYTHING, that means EVER little tweak has to be run through a meeting and discussed before it can be pushed out. That means, all the little projects you did on freeCodeCamp.com, forget it. You won’t have that sort of fun anymore.
If you are 21, or thinking you are going to have fun with friends and relax in this job life, forget it. It will strip your soul away.
12 hours a day is the most RIDICULOUS rule in the workplace ever created. In fact, the rule is basically 100 years old. Now, there are scientific studies literally pointing out that fact that the brain shuts down after 6 hours, and 2 hours each day are used by the employees to do NOTHING.
So, if you don’t want to get a development position, I totally get it. Right now, I’m actually considering working at a resturant, or a job that serves and helps people (I like that sort of thing) and continuing to pursue the limits of programming knowledge and work on my own personal projects on github.
BONUS: If you want to check out my github, I have some pretty cool projects https://github.com/jackmead515
Well did you have just one experience?
It might be better somewhere else, or am I wrong?
It’s unlikely. Maybe minor small changes but…
From what I’ve seen, unless it’s YOUR company, you don’t have any freedom.
It sounds like a bad fit for you, but from what I’ve seen and heard while searching for jobs, not all tech companies are like that. Quite a few have open office space with some time set aside each week for employees to work on personal projects.
EDIT: At least I hope that’s the case. I also don’t think I could stay sane in a repetitive, rat race job.
It sucks that you aren’t enjoying your new job, but I don’t think it’s right to assume all jobs are like yours. Cubicles, long commutes, and bad company culture exist is many industries outside of software.
I’ve been working as a dev for a number of months now, and not one of your four points applies to my job - no cubicle, no commute, lots of coding, and lots of freedom.
In my case, jumping into web development from another field really improved my quality of life.
No job is perfect. I think a lot of your questions could be answered during an interview with a potential employer. And if they aren’t willing or interested in taking the time to answer your questions then I personally wouldn’t want to work for that company.
I’ve been working in the software development industry for 35 years, doing a great variety of jobs. Even so, there are many things I cannot advise on. I’ve never known any other type of career, so I cannot comment strongly on how software development compares to other jobs.
I used to work for myself. The freedom and self-determination is great, but the lack of security, lack of support, lack of any holiday, and money worries generally make it a tough gig. Getting good (well-paid) work can be very hard.
I have worked for small companies. The main problem is that you are beholden to the boss. If he or she is a monster, you are in a difficult situation. Finding another job while in a nightmare job can be very hard. Quitting and then finding a job can be scary because you can end up with a significant employment gap, and you have no income during this period.
I have worked for large companies. This can be bizarre, because of the disconnect between the layers of management. Often, decisions are arbitrary. You may be shuffled around from one project to another, and the internal politics can be a minefield.
I have recently got a job with a very small but resilient company, and what I am doing is scary - because I have a lot of responsibility for the whole project - but also very enjoyable because the project is largely my ‘baby’ for the time being, and I am learning a whole lot of new stuff. I am experienced (or jaundiced enough not to be jealous of any of my professional work, but what I am doing now is fun, and the people are pleasant.
My first job was a disaster because (a) the boss was a twit and (b) I was a twit. That’s not a good combination. [He was Trump-like and I was young and naive.]
So I suggest that it can be a good career, if you can find the right job. You need to choose your job very, very judiciously. HTH
What company are you working for man? lol And are a lot of companies around your area like that? (if you know)
You’ve been doing this for 2 weeks and you ALREADY feel this way?
You better run. People do this for 30 years. You’re right that it’s crazy - desk jobs can crush your spirit, however it usually takes a few years first. Good luck!
Sounds like we’re similar - I like autonomy and its nice to own a project. My previous company was large and we were Agile. I think companies do different degrees of that though - we had the daily stand up, a weekly meeting, and another meeting every 2 weeks. For the most part I worked on my own thiugh. My current company is small, we have one short meeting weekly, and the rest of the time I’m on my own, it’s great. Since its a small team of devs each person is very familiar with certain features, so it feels like code ownership. Since you said you’re interested in the algorithms you may enjoy a backend job more (i.e. serverside). I use Java (many use Spring) but I think node and ruby are also popular on the backend. A lot of jobs sound boring, but ultimately you’ll be solving problems no matter what specific product you’re working on. Maybe just target an industry that interests you.