I'm currently working my first job as a Software Engineer. Prior to this position I've worked at places such as Wal Mart, Sam's Club, and Circuit City. I'm currently finishing my last two classes for my AAS in Computer Programming. I do have some prior history/experience with programming as well - a friend and myself created and maintain as a hobby a website that's about 8 years old, using PHP and MySQL. Although it's a hobby site, it does generate ~$500/month in ad revenue. While I've been told that it doesn't equate to any real experience, I feel like it's worth something.

I've been working in the position I'm in now since October. I'm making very little ($11/hr) and actually took a pay cut from my previous job to take this job. I took it because I live in a very rural area, where jobs in this field are not common. The company I work for is a small food additive manufacturer. They have approx 25 employees total. The IT Team consists of myself and my supervisor, the "Senior Software Engineer".

I've noticed from day 1 that the company is very disorganized. There's no clear chain of command, and I've seen a few people quit and be replaced just in the short time I've been here. My first personal poor experience occurred a few weeks ago. I returned from lunch one day, and my supervisor informed me that the main boss of the company, let's call him "Bob", had told my supervisor that I was over 5 minutes late that morning, and that it has happened before, and has to stop. Knowing I clocked in at exactly 8 AM, I informed my supervisor as much. He agreed that he didn't think I was late, and suggested I talk to Bob about it personally.

Later that afternoon I went to Bobs office, knocked on his door and asked if he had a moment. He said "sure, what's up?", and I proceeded to tell him that my supervisor gave me his message, but that I was certain I clocked in on time. He looked at his watch and said "is my watch wrong, it's usually right on time" then proceeded to compare his watch time with his computer time, and verified it was right. I explained that I'm certain I clocked in at exactly 8 AM, and verified with the secretary that my punch in time was recorded as 8 AM. He then said that he expects me to be at my desk by 8 AM, that I'm not doing him any good if I'm still walking to my desk during that time. I responded "Ok, I can certainly start clocking in at 7:55 if that's what you'd like". He responded "No no, I just want you at your desk by 8". I'm still uncertain of how I'm not supposed to clock in early, yet make it to my desk by 8 AM (it's at least a 2 minute walk from the time clock to my desk).

He then asked if my previous jobs didn't expect me at my work area by starting time. I explained that every job I've worked has had strict policies about not clocking in early, even 1 minute before your scheduled shift. He looked at me as if he didn't believe me, then started going off on a rant about how if I get stuck in traffic and aren't on time, that's "a you problem, not a me problem". He ranted like this for at least a few minutes, and all I could think in my mind was "...I wasn't late". Finally he started to wrap it up, and said something along the lines of "just for future reference, you should give a warning about what you want to discuss next time. This might be important to you, but it's not to me, and I was very busy". I apologized and went back to my desk. He didn't so much as acknowledge me for the next two weeks.

Then this week my supervisor informed me that we have two new people starting soon, and Bob doesn't want to buy more licenses for our Microsoft Office subscription, so Bob said to give my license to one of the new hires, since I don't use it. The thing is, I do use it. The funny part is I have to use the email to send Bob an Excel sheet weekly of all the work I've performed, broken down on an hourly basis. I now won't have a working email, or Microsoft Excel to be able to provide this. At $12.50 a month, I just don't understand how this is an area chosen to save money, and it kind of made me feel like he thinks I'm not worth that much.

Another unpleasantness that I could write yet another novel about, but will try to keep short, is a woman who was hired about a month ago. I think she's over sales and HR (again, no clear chain of command). She came in and immediately started telling my supervisor and I how she wants our website redone, what she wants things to look like, etc. We are more than open to suggestions, but she had her mind set to exactly what she wanted. She's an older woman, and I don't really think she has a good grip on what modern websites look like. Most of her ideas are at least 10 years out of date, design wise (she actually said she doesn't care what the website looks like on mobile, that she wants it to look really good on desktops - despite our stats showing 90%+ traffic is viewing on mobile). She's also taken over our company's Facebook page, and posts very random stuff every day, with no relevance to our business. The other day she posted a video, titled "Millennials in the workforce", which poked fun at Millennial stereotypes. I felt like this was extremely unprofessional, as did many others in the office. She refused to take it down, saying that it was just supposed to be funny.

I feel like I'm doing a very good job at this company. I'm fixing bugs in our production software that have eluded my supervisor for months. I'm building new production software basically from scratch, on my own. My supervisor seems to think I'm doing a good job as well, based on comments I've overheard him making.

My jobs up to this point have been labor jobs, that didn't really require a specific skill set like this job does, so I'm used to being treated this way. I honestly believed that it would get better when I entered a position that required a specialized skill set. Was I wrong in thinking this? Are the majority of jobs in this field similar to this? I'm fine with keeping my head down and just dealing with it, if this is indeed the norm, but I can't help but feel like this is not a typical workplace environment.

  • 68
    Hi, maybe consider adding a tl;dr section to this.
    – solarflare
    Commented Feb 27, 2019 at 4:12
  • 2
    Adding a country tag might be a good idea. Rules and standards do vary in various countries.
    – Ister
    Commented Feb 27, 2019 at 12:06
  • You might want to write a more specific title. Something less generic, that sums up the specificities of your case.
    – nic
    Commented Feb 27, 2019 at 12:38
  • 1
    I voted to close this question as too broad, because it asks about several unrelated things: "Is my salary fair", "Is it normal to be disorganized", "What kind of turnover rate is too high", "Is 5 minutes late too late", "Does everyone need an MS Office license", "Who should make design decisions about the company website" and "How should you run a company facebook page". These are all good questions, and many of them are already answered on this website. But they should be asked separately.
    – Philipp
    Commented Feb 27, 2019 at 15:41
  • 3
    Comments are not for extended discussion; this conversation has been moved to chat.
    – Neo
    Commented Feb 27, 2019 at 17:46

12 Answers 12


Before I go to the actual answer, let me first share a personal experience, which in many ways is similar to yours.

I was working in a small company which was manufacturing metal parts. It employed some 15 people in total and was located in a rural area (in Poland, however this is not really relevant here). It was entirely governed by the owner (the boss). There were no team leaders, all final decisions sit in the boss' hands.

My job was in general handling all IT stuff, from making sure that all computers work, through administering a company server up to deciding on the choice of new software (the boss had to accept the spending) and sometimes writing an entirely new one. Since the boss had no clue in that matter, I had quite a lot of liberty compared to other line workers, however the budget was always extremely tight.

Even though I wasn't personally a target of such behaviour, the boss presented the same attitude to line workers. They had to clock the moment they entered the company but then they were obliged to change the clothes. The time they were changing was arbitrary deduced from their work time (it's against law). Also there were cases where the boss was attacking either a specific employee or everyone arguing that they take to much time for changing (there was no proof of that in general). I guess the only reason I was never attacked about that was that I didn't change and effectively was on my work position few minutes before everyone else and could leave it few minutes after others.

I also had some challenges, for example when I was working on something that required thinking rather than typing (yes, that's quite significant part of IT), he started challenging me claiming that I don't do my work.

On top of that at some point there started to be problems with payouts. At first they were delayed, later there came a time when suddenly the manager stopped paying at all. I left the company, when it didn't pay me for 3 months (after spending there only 9 or 10 months). But I've learned a number of things.

For several reasons you're in a very tough situation, but there are also some positive aspects of it.

  1. Your boss (Bob) is targeting you for no particular reason.
  2. You direct manager doesn't perform his duty. It's not clear to whom you report. He doesn't support you in any way nor does he defend you from unjust attacks.
  3. You are inexperienced in the field and as a result you may be unsure of your actions and decisions and easily influenced.
  4. The company profile does not contribute significantly to your progress in your career as an IT specialist.
  5. You are in the rural area, where finding job is difficult and finding IT job is probably even worse. This also adds to both insecurity and lack of confidence.

There are just few positive aspects: 1. You have a formal IT job to add to your resume. 2. Your tasks seems to be largely aligned with what you want to do (again, a plus on your resume). 3. You'll learn some typical red flags and what to avoid in the future.

Having said that let me conclude: No, the situation you're in is not typical for IT. On the contrary. Since now there is a huge demand for IT specialists, employees quickly run from companies like you describe. Having 1+ year experience with some off-work IT related activities that you can show give you a strong position on the job market at least for the junior position, that will most probably be paid a level higher salary than you have now.

Now some suggestions:

Start documenting as much as possible in writing

This is very important. In other words "cover your back". You are already targeted by your manager so it's time to securing yourself from more serious attacks. Can you somehow download the information when you have clocked in as well as logged into the computer? If no, take notes. Same with leaving.

Keep a record of everything you do with start and end time. You can build an easy spreadsheet (I know there is a problem, I'll get to that) with a small macro and then you'll just need to enter the current time (Ctrl+Shift+colon) and a short description of task. The macro should automatically fill in the end time for previous task, date, calculate spent time and move the active field accordingly.

Document all decisions that impact your work. Send an e-mail to the new HR lady with list of requirements she presented. Add your concerns and risks you see (be specific). And ask for her confirmation that she realises the risks and accepts them. CC your line manager. While talking to someone always inform you'll send an e-mail confirming the arrangements and that you will need the written confirmation in form of a reply mail.

Without that sooner or later it will fire back at you. It'll not be the HR lady's responsibility for having poorly designed web page. It'll be yours.

Show proactive approach

You say you have to send an Excel report but you're not given the tools. Rather than complaining ask (again - in writing) if you're allowed to use open source solution (Libre Office).

This benefits in two ways. On one hand, you have your tools. Even if there are some problems with them, you will be able to work.

On the other hand, you show that you look for solutions. If you're not dependant on external files you may even suggest moving the entire company to LO. Let's say there are just 10 users of license now, you have just saved 125 USD/month for the company. For sending e-mails you can use Outlook Express (I don't know if it's still there), webmail access or Thunderbird. You're the IT guy, you should be able to look for this kind of replacement products.

Until you have a new job - bite your teeth and try your best

This part of an answer might buy me some negative votes, but that's the reality. You're in a location where you might have problem with new work, so it's better to do a bit more than you're actually contractually obliged to. So be those 5 minutes early and leave 5 minutes late. You need to put a fine line though. If your manager starts to push for you to work over-hours or to do more than it is even possible, request that in writing (in an e-mail). It'll be also the sign that you're on a hot stool and you really need to act fast to find a new job.

Note - trat this job as temporary, but still you apparently can't afford loosing it yet. If you feel you can run on those 500 USD from your web, you can as well ignore the whole section. Yet remember this job benefits to your resume, even if just slightly.

Start looking for a new job now

There are lots of negatives and red flags and you may expect sooner rather than later you'll be targeted to leave the company. So again - be proactive.

Polish your resume. Create your LinkedIn profile. Find some HR agencies and contact them if they have anything suitable. List all your achievements, your page, all webs and apps you've written so far. List technologies you know in general and in project description mark those you have used.

Reconsider your options. Do you want to live where you are now? Can you have some trips? Or maybe you're ready to move entirely? Either case you can find some jobs that are suitable for you.

One option is to look for freelancing jobs where either all or majority of your work can be done remotely. I've seen developers who showed in an office once in a month or even less. For freelancing you may never see your client in person. You just do everything over internet and your projects may as well be done for someone on the other side of the globe.

There are pages where you can look for this type of work. It has some bright and dark sides so read a bit more about it in the internet. But if you managed to create your own web-page you should be able to work with that as well. And even considering 15% of missed opportunities (i.e. you did your job but the other side doesn't want to pay) I would expect a payout significantly higher than you have now.

If you're open to moving to a different city/state/country start looking for companies producing software. This is your natural next move as apparently that's what you like doing.

Don't even think about sticking to your current employer. Probably every IT job will be better than current one.

Invest in education

I don't know your skills (however it seems you know basics of SQL, PHP and probably some other languages). Look for on-line courses. Learn UML (I know some say it's a waste of time but I strongly disagree). Learn programming best practices. Pick some framework and learn it. Pick a new language. Look if there is anything where you can for free or at reasonable price get some sort of certification. All those things increase your chances on the job market. And that's what count.

If anything from Mawg's answer is not familiar to you, this is the area to start with.


No, this isn't typical in any workplace.

You have a successful website that you built - $6,000 per year in ad revenue is nice. That, plus your bug fixing ability, and the new software you're building from scratch, are certainly enough to find you a better paying job in a company where you can actually learn from professional developers. I'd recommend tidying up your resume.

You'll also find that the best software houses don't care when you come into work (or if, even). They're more interested in results; can you deliver on time, within budget, software that does what they need it to do. They don't care about 5 minutes here or there - that's petty stuff.

  • 2
    I've been working in IT for nearly 23 years, and I might have been that close to right on time coming into work about that many times, give or take. (For clarity: I'd guess I showed up at my desk within 5 minutes of when my official start of day was roughly 20 times. While in IT, I've never been asked to punch a time clock.) I'm generally considered a good employee. I've turned down a few promotions I was not ready for.
    – Ed Grimm
    Commented Feb 27, 2019 at 4:43
  • 41
    Software devs that have any talent at all don't watch clocks. They watch calendars. Delivery dates are all that matter. Meet them, and you can do what you want when you want. Miss them too often, and you'll have to start watching the job listings. Commented Feb 27, 2019 at 6:42
  • 11
    But also, your work time starts when you leave the public road and enter the company’s premises. So starting at 8am does mean you enter the building at 8am. Unless there are guards outside that have to let you through before you can get the building, in which case you meet the guards at 8am. Or join the queue to the guards at 8am.
    – gnasher729
    Commented Feb 27, 2019 at 7:41
  • 13
    " I just want you at your desk by 8" - do as commanded, minion. And spend the first 60 minutes checking Jobserve/other for somewhere better.
    – Justin
    Commented Feb 27, 2019 at 8:48
  • 2
    I disagree that this isn't typical in any workplace. This is a bad workplace, or possibly just a bad manager / bad relationship, and those are unfortunately not all that rare. However there is a big area between typical and 'it happens'. If your manager doesn't value you or your work and takes out their frustrations on you in petty and passive aggressive ways then you should be able to find a better job. How easy this is depends, in a city it should be easy, in a small town with one company that has IT jobs then it is obviously very hard. The asker may need to move and should consider it.
    – Eric Nolan
    Commented Feb 27, 2019 at 9:40

This is not an average software development job, and you're right on the mark in guessing in what ways it differs. A typical such job will generally:

  • Pay far more.
  • Be well organized with a clear structure of management and processes.
  • Have far less turn-over.
  • Not care if you're 5 minutes late, let alone if you reached the door on time but your desk 5 minutes late.
  • Be understanding if you're occasionally even later due to a traffic jam or the like.
  • Show professionalism in how they address the public.

All of your feelings are spot-on. These things are all red flags. I'd strongly recommend finding a job where you'd be happier and receive more of the respect you deserve; you probably won't ever get those things where you are now.


You're working at a sweatshop.. Tell-tale signs...

1) Boss is finding any excuse to hold you over a barrel and have you walking on eggshells (Boss boss, not your supervisor).

2) Boss even goes to unreasonable lengths to do so (IE: wants you at your desk at 8am, but doesn't want you clocked in.. (it's like the old dog fetch meme ".. no touch, just throw!" (how can you throw the ball if you don't touch it.))

3) Boss is being an extreme tight-wad ... sharing out MS Office licenses? Really? Wow...

4) Programmers are knowledge workers, not "butts in seats" workers. Bad shops judged programmers by .. how many hours they work, how many lines of code they write .. stupid things that have nothing to do with quality work. Good shops judge programmers by how well and how fast they accomplish a project goal (be it a scrum run, milestone, or even a small utility tool). Programmers are paid for their problem-solving and creativity. If head boss is paying you hourly, he has no clue, and that's a HUGE red flag.

5) Your hourly pay is pathetic. I know you took a pay cut for this position hoping to get experience, but .. this is minimum wage pay. There's people working at UPS, Aldi grocery store, Amazon, etc getting paid more then you.

6) Your supervisor is weak-willed if they expect you to go talk to the head boss yourself over a time-card issue instead of doing it themselves. Your supervisor should have your back and go in there fighting tooth-and-nail for you yelling at the boss if need-be to affirm that you were there on time and are doing good work. Your supervisor telling you to go talk to the boss directly means they don't like to confront the head boss and will roll over anything something major comes along (which is bad news for you as the head boss finds out you're a good worker.. they're already making you walk on eggshells.. which is just setting you up to have to bust your hump in an abusive relationship with them.)

7) Essentially, the head boss is an abuser. These types of people want to give the least but expect the most. They yell at people, criticize them, run them down.. their ideal worker is someone that is very talented with no self esteem that they can just yell at and trash talk and abuse in order to get them to work their butts off for them. That kind of boss always has high turn over rate, because regular folks don't put up with it for long. This type of boss thinks everyone else has a problem, until they eventually get their employee slots filled with their "ideal" employees who are all weakwilled and willing to do anything it takes for the boss while being paid squat (probably the kind of boss that says things like "you should just be thankful you have a job!" after you bust their hump for them.)

8) the HR lady is probably in the chain of command, because she acts just like the boss guy.. yells at people, and expects them to bend over backwards when she does without any thought or notion of how much work or cost something will take. In the real world (ie: places that have their act together), a lady like that comes storming in and making all kinds of demands, and the programmers (your supervisor) would simply itemize everything and hand her a cost estimate with large dollar signs on it saying "we can do everything you want, and here's how much it's going to cost.. are we going to bill your cost center for that.. or... do you have others that want to pitch in for the internal cost?" That shuts down idiots like that instantly. This lady has no clue how much she's costing the company by just going around making demands and not realizing there's actual TIME AND MONEY value going to making it all happen. No work is done for free. Also, a web-site redesign should be done after a market survey or some other justification.

Since you have some HR lady demanding a big web site redesign, and some boss guy that's busting hourly worker chops and paying peanuts to programmers.. you must be working at some podunk mom-n-pop shop that's scraping by.

The biggest red flag is that eventually they will ask you to do something illegal. Abuser boss types live in their own little world and think the laws they make in their work life trump real world laws. They're the types of people that, once they've conditioned a staff to jump and do their bidding unquestioningly, they start to ask their staff to cook the books or break laws.. and when the SHTF.. they blame the employees. "I never asked this person to fudge the numbers." (Or, in the case of programming, he'd tell you to cheap out on working on some aspect of a project, then when the client catches it and complains, chews you out in front of the client saying "I NEVER TOLD YOU TO DO THAT!")

There are so many red flags at this job.. my stomach is turning just thinking about it.

You need to get out ASAP. Before the conditioning sets in further.. b/c they're already running you down and making you doubt your skill and talent. You will never please these people. Your supervisor will never stick up for you. There will always be a revolving door of people not willing to put up with that environment and you'll get stuck eventually doing more work to carry the load of turn-over.


Put the experience on your resume and start looking for another job.

  • 4
    Was curious as to why no one else mentioned about the point you made in #6. That is a big red flag for me !
    – GoodSp33d
    Commented Feb 27, 2019 at 9:56
  • 4
    cook the books of break laws - As soon as I got to the Office license part, I was certain the boss would ask you to pirate licenses.
    – Jonathan
    Commented Feb 27, 2019 at 11:35
  • Might consider adding to the "creative" shifting of Office licenses to document, document, document. By the end of the question's 2nd paragraph I knew that was coming. CYA for when the BSA comes knocking, hopefully after the OP has found a better environment. Commented Feb 27, 2019 at 14:10
  • Part 7) and 9) are the really big factors. Head bosses tend to dictate the tone, especially in a small company like this. Commented Feb 27, 2019 at 18:34
  • Another tell-tale sign is that they lied to you about the value of your website design experience. Running a website is non-trivial and it is hard to believe that your boss wouldn't be aware of this. Commented Feb 27, 2019 at 18:36

This is definitely not common of software development jobs, however with that said, you're also not working at a software-focused firm, or really anything in an office/desk environment (at least, for everyone there.)

I grew up in a rural area, and had two software-related jobs before moving to a city. While I didn't experience any outwardly hostile environments, it definitely did seem fairly disorganised.

Your experience and your hobby app will definitely be able to get you a better job, but you may have to move somewhere else to get it.

  • 3
    I think this is the right answer because other answers ignored OP's location's IT job scarcity. Commented Feb 27, 2019 at 8:32
  • I think this addresses the root cause really well. This has been my experience at non-software companies, especially manufacturing companies. I'd add to your last sentence to recommend focusing on producing excellent work and building personal relationships with the users of their product that they can use a references for a move into a better job in the near future. Those of us who have been around a few years recognize these environments and can read between the lines without the applicant bad-mouthing the former employer. Commented Feb 27, 2019 at 14:03
  • I've known for a while that I'm likely going to have to move in order to find a good position in this field. I've came to terms with that, but I am stuck here until I finish my two classes for my degree. I just wanted to ensure that this workplace environment is indeed not normal before I uproot and move several hours away, just to be right back in this type of environment. I think my best bet for now would be to stay where I am for the next few months to gain experience, graduate, and find something else.
    – Zach O.
    Commented Feb 27, 2019 at 16:04

If a manager is watching when you (and everyone else he manages) clock in, chances are that they aren't managing you, but rather micromanaging you. In addition, being hostile when a subordinate asks a question, is a big red flag.

Skimping on software licences though, is not uncommon (but still bad) in my experience. It is usually an indication that whoever is in charge of licensing does not understand business costs (you wasting X minutes every week costs way more money than a stupid license).

People using social media somewhat whimsically is definitely not professional, and where I work, would get you a stern talking to.

To sum up, most of what you are saying is not only not normal. It is downright a bad environment to work.


This is not a normal situation and you shouldn't expect it to change anytime soon. The situation is a result of poor management, as it was clearly highlighted by your talk with "Bob". His failure to see the problem and the resistance to change his ways does not make it very likely that the cicumstances will improve in the near future.

Software developers are in high demand and you can surely do better somewhere else. I would recommend you start looking for a new employer.


Sounds like a mom & pop operation, where you cannot expect to learn proper software development processes. The absolute best that it can do for you is get you some real world experience on your resume. About the only thing that can be said about it is that you will have to wear many hats & learn many skills, but you won’t learn software engineering there.

If the clock on thing bothers you - and it should – what happens if you work over? When you are in the zone you don't just down tools at Xp.m and leave. Are you expected to work unpaid overtime? If so, point it out. But, personally, I would not get into a fight with a nit-picker, but you cannot win against that sort of personality.

If the outdated technology thing (ignoring mobile when 90% of your traffic comes from it) bothers you – and it should – point it out to your boss. If they can’t understand that, then they are an idiot. Get all such decisions in writing, before the inevitable blame-fest starts. Of course, it won’t win you any friends in the HR lady. Btw, be sure to keep the old site, preferably in such a way that you could switch it back instantly, if the proposed new site does not pan out.

It's abnormal, and unpleasant, but I think you have to suck it up for at least a year, then get the hell out of Dodge. Do not stay any longer than you have to. In fact, start looking right now, you may just finds something. The first job offer you get will double or triple your current salary and ought to expose you to professional software development processes.

How many of the following are you currently practising in your workplace?

  • Requirements gathering & analysis for new projects
  • Software architecture document
  • Effort estimation
  • Detailed design document
  • Coding – U guess you do at least that much :-)
  • Test plan
  • Unit test
  • End to end integration test
  • Review of each of the above before proceeding to the next step
  • Version control of source code
  • Off-site backups of data

If any of those terms seem strange to you, get at least a passing acquaintance of them. That’s roughly what the (waterfall/V-method) software development lifecycle looks like (with iterations for agile).

Having a passing knowledge of them rather than none, will help in interviews, even if only to say “we currently don’t X, although I suggested Y”.

I would suggest trying to introduce these to your workplace, but am fairly sure that suggestions of professionalism will be me with “why do need to do that? We gotten on just fine until now”, or the dreaded “we don’t have time to” (which generally means that you don’t have time not to, as you will spend much more time later cleaning up the mess) “</rant>.

Good luck. One day you will look back on all this and laugh :-)

  • I don't see any merit in staying the year tbh, learn nothing to earn next to nothing so you can write a year of nigh worthless experience in you resume? Why? Also, the process you describe, while not uncommon, is in no way typical (anymore). Chances are OP will never have to deal with that in his career. (and aside, simply iterating the waterfall does not make the process "agile")
    – Douwe
    Commented Feb 27, 2019 at 11:42
  • I agree that he should start looking now. It's just there seems to be a general consensus around here that a year is a god length of time to avoid being labelled a job hopper, but the OP is in a toxic, low paying, earn nothing no-upside situation and should look elsewhere ASAP (but never quit without a job to go to).
    – Mawg
    Commented Feb 27, 2019 at 11:51
  • As to lifecycle, let’s agree to disagree. I am in embedded and that’s till the way it gets done & will probably always be done, especially for large or government or military projects. I can see that front-end stuff might need to be “quicker to market” and “agile”, but even If he only ever codes PHP, it ought to be necessary to do most of those, and how can it hurt to at least understand them? I only threw that in because it looks like he has had no training in what s/w development looks like. Feel free to post an alternative & I will take no offence.
    – Mawg
    Commented Feb 27, 2019 at 11:51
  • OP could implement version control on their own (install and learn git on their own workstation). Ditto for unit testing. That's where I'd suggest they start. The others will naturally flow from there (what do I unit test? I guess I better figure out and document the requirements...) FWIW I've been doing agile for years, and yes, we do some version of all of that. The agile definition of "project" is also a lot smaller than in typical waterfall Commented Feb 27, 2019 at 14:18
  • Thanks for very good comment (sorry, I am out of upvotes for today). Subversion might be easier than Git, but any version control will do, if only for himself. And unit testing is the best bang for his buck - automated, of course. It wouldn't hurt to "Lint" the code either. Thanks for giving a new guy some idea of what the real working world entails.
    – Mawg
    Commented Feb 27, 2019 at 14:43

You have been getting a lot of very good answers which I essentially agree with. I would like to address one side remark: "My supervisor seems to think I'm doing a good job as well, based on comments I've overheard him making."

You should be absolutely certain of the impression other people have of you and your work. Therefore: ask them for feedback, if they do not give it voluntarily. Do that repeatedly! The reason this is so important is actually twofold: 1) We are not well suited to objectively observe ourselves. Therefore, external observations are valuable information. They either highlight an area for improvement, or, at the very least, an area to work on improving your outside image. 2) The act of asking itself is viewed favourably by most people, because it stresses that you value their opinion and that you are willing to become better.

Always keep in mind: Tomorrow's you will be better than today's you. A lot better, if you already know what it is you want to improve!

And yes, get another job.


Sadly disorganized companies are very commmon.

Bosses on power trips or obsessing with your work hours do exist and while bad, have to be accepted if you want to remain at the company.

The license thing happens too often as well but in this case you need to inform your direct superior immediately if your ability to do your work has been impaired by this!

To summarize, while not an ideal work environment (I suggest to look elsewhere if it bothers you too much) your experiences are sadly not uncommon and often the nasty or strange reality.


I am working as a software developer in a medium-sized machine manufacturing company (about 100 employees) in Germany.

Our company does have a policy about being required to be punched in at 9 a.m. While this is a bit annoying at times, it also means thar it is easier to schedule meetings. And it is one less extra perk that us haughty software engineers enjoy at the expense of the good folks at the assembly line ;)

I actually like that we have to punch in and out. In my experience, it means that I will have more free time because if I work longer one day, I can leave earlier on another, i.e. overtime does not just disappear. In fact, time tracking is a necessary condition for me whenever I look for a new job.

That said, it definitely seems that your company boss does not value your work, or maybe thinks he should make you feel as if he does not value your work (not even willing to pay for another excel license etc). This is something which I find not so normal - but then it is also unlikely that you will have bosses that have 100% understanding of what you do or need. The question is how much this interferes with your daily work. If it is just s little, you might just put up with it. If you think it is too much just start looking for something else. As a young programmer, what you most need is experience, and a new job is always a great opportunity to learn new stuff.


I've been a software developer for around 15 years now. I can tell you that I haven't ever had a single clock-in job in that time. Not even as a teacher. I have always been salaried. We are in a specialized field with specific skills, and that usually warrants a salary. That said, you should always be at work on time. That's a must. A detail-oriented position like ours, with the pay we normally get, demands our attention. Leave earlier to compensate for problems that may arrive, and get a cup of coffee if you get there early. Use that time to set up work station, make your to-do, etc. Always better to be early.

Don't second guess where they're spending money, that's not your job. Your job is to code. Just do what they say, and when they get hairy about not getting that Excel, let them know that it's not possible to perform your duties without the software required.

Try to keep all communication through your supervisor. They're paid to deal with the boss, typically. I know it's hard in a smaller company, but at least let them know you don't feel comfortable approaching the boss.

New HR/whatever person taking over FB? Not your issue. Let the bosses fight out about what she posts.

As for her wanting changes...leave that to the supervisor. If he says do it, do it. That's our job. Unless you're in the main position for approving/denying requests, let the guy in the corner office take the brunt.

It's hard sometimes to be a coder. You get to do a job where they only know you're there when things go wrong, you rarely get appreciative comments, they don't understand how busy you are or how their request falls into your schedule, they think you're a black magician and perform arcane rites to do what you do. Hate to say, just get used to it. You'll be happier. Love your code, do what you love, let that be rewarding. It'll keep you saner, because users will try their hardest to drive you over the far edges.

Not the answer you're looking for? Browse other questions tagged .