As the title say I am looking for some advice.

I’m almost 6 months into my first role and it really isn’t what I expected.

I’m late thirties and always had an interest in tech, but personal circumstances and a late start in life left me unsure if I was good enough.

I did too many boot camps and in all them they discussed how in your first role you would get lots of support to help develop your skills.

I work for a small company < 10. I don’t feel I get the support I expected.

A lot of time the spec is kept in the lead engineers (owners) head and when given a task I get no timeframe, the task is given verbally with 100 words when I need 1000 words. It’s confusing to understand their vision so I’ll do something and either be told great or no that’s completely wrong.

If wrong I’m not called out and they will spend a little more time going over what they want.

The boss is always so busy that sometimes you feel like a burden asking for pointers.

The tech stack is great but as a mature company they have refined the process over numerous projects and the newest will start as a copy of the last one, keeping all the shared hooks and stuff, so naturally it’s second nature to them and I feel stupid.

I guess my question is is this normal and how do I write an email expressing these concerns and to gauge how I am doing?

As an aside, there is no remote work and no headphones in the office, even though nobody really talks about work that often. So when is a good time to start looking for your second role.

I feel like I flip between I am a god and can code anything and omg I know nothing show me the nearest bridge.

Thanks.

1 point

This engaging racing game invites players to speed through intricate tracks that test their skills. Players must avoid obstacles while racing against the clock to complete each course quickly. In polytrack, the challenge lies in the increasing difficulty of the levels, requiring players to enhance their reflexes and timing. The game keeps players engaged with its dynamic design, offering new obstacles and tighter turns at every level. Mastering the tracks demands focus, precision, and quick decision-making for ultimate success.

permalink
report
reply

Why are you posting this here?

permalink
report
parent
reply
1 point

Before you take the advice of anyone here, try to find out how long they have been in the business, because I think that’s going to change the kind of feedback you get. I’ve been doing this for over 20 years, and I’ve worked in all kinds of places, from small business, to large, to government, as an employee and consultant. Not bragging, just providing a reference point.

Your concerns and situation are ones I have experienced myself. You are not alone. I’ll give you advice I wish I could have given myself decades ago.

unsure if I was good enough

Every programmer starting out has this feeling generally. Please don’t take this as dismissive. I actually take this as an indicator of someone who will succeed at becoming a good programmer. The brazen ones who do not introspect and understand their inabilities are doomed to flounder perhaps forever.

I feel like I flip between I am a god and can code anything and omg I know nothing show me the nearest bridge.

In my experience this feeling can last for decades, probably forever, but as you gain more experience and hours of working on code, the bridge diminishes. If this doesn’t make you feel better, you’ll just have to take my word for it… it does get better and you will be happier over time. As you get more experience, you will be able to better estimate things, so you can know when something is way too big to go alone, or without more resources/support, or without more budget, and how to say so/no in those cases.

It took me a while to realize, that if something doesn’t work out the way you planned it, it’s not all on you, the business and how it functions (or not) has more to do with it than anything. Small businesses are, frankly, generally more stupid. It can be the blind leading the blind, so what hell were you gonna do anyway. They didn’t want to pay for a super team with mentors, so they get what they get, and that’s not on you. I’ve found that most of the time in business, failure happens and shit just moves on, because there are other fish to fry and fires to deal with. What you think matters, as an introspective person, hardly crosses the mind of business folk.

boot camps [said, in] your first role you would get lots of support

You have to keep in mind the source of these boot camps and what they are for. They are funded by silicon valley so that they can get as many (hopefully talented) bodies in the door as possible, to keep costs down. More supply, lower costs. As such, they are aimed at people who will work for those companies, and those companies are desperate (depending on the market I suppose), so they will definitely have support in order to retain folks.

I work for a small company < 10. I don’t feel I get the support I expected.

Speaking from experience, being a developer at a small company is generally fucking garbage, for some of the reasons you and I have touched on. They have anti developer and anti productivity practices, and they don’t care to improve. They generally don’t know what they don’t know. Depending on the place though, this can be an advantage: they don’t know enough to know that “you suck” (you don’t suck, by the way). They can also be desperate to hang on to anyone dumb enough to keep working for them (no offense. You are not a dummy, circumstances are just not in your favor yet).

the spec is kept in the […] (owners) head

Aha, yeah there’s your problem. The owner is a developer running this shit show, and I guarantee they’ve never run their development the way the software development industry would. They should know better than to run things this way; if you can’t have the fundamentals of your business shared with the team that are trying to make it a success, how could you ever hope to make it work? Some places hobble on in spite of this, but they will only have the fraction of the success they could have had if only they’d had a person with genuine vision (or smarts enough to hire that person) at the helm.

[when given a task I get no timeframe]. [the task is given verbally]. [confusing to understand their vision].

If you had worked at a big silicon valley place first, you’d have first hand experience with agile/scrum, and how it works to solve all of these common issues. This is not a criticism of you, I’m saying working at a place that has agile/scrum should be your next pursuit.

In A/S, tasks are written down in tickets, estimated, and prioritized. Effort and vision are made clear before the work starts, written on the ticket so everyone is clear on it and about the deliverables. If it’s too much effort, the ticket can be split into manageable chunks. It vastly reduces the people problems that come with managing development work by turning it into a process that can be refined according to how the team works, instead of a negotiation with a lead maniac.

By not doing/knowing about this kind of practice, your business is at risk from competitors who implement this correctly, are therefore more efficient, and will naturally out compete you. Not your problem though.

If wrong I’m not called out and they will spend a little more time going over what they want.

Good. As much as I am shitting on them, they are at least reasonable seeming.

The boss is always so busy that sometimes you feel like a burden asking for pointers.

That’s on them, and that’s business life. Honestly, IMO they need to get some of their shit together, but that’s not your place to advise or worry about. Also, they probably knew they were getting a greener guy, so they’d be expecting questions. There’s a balance between knowing when to ask, and just trying stuff, and newer people should bias towards asking, IMO. Your leader may feel differently, it seems like they’re reasonable enough you could just ask.

the newest will start as a copy of the last one

Having done this myself before, this is the path to hell, in my opinion. It can work, but it’s a shortcut and in my experience it’s a maintenance nightmare. This is not the practice of a company with vision, it’s a company that’s just chugging along for now. If you had the vision to be acquired one day, you wouldn’t do this. There should really be a core code base that all instances share, so even old implementations can benefit in the future, if need be. I’m sure this opinion will be controversial. Again, not your place to worry or talk with them about it.

[Existing code is] second nature to [my colleagues] and I feel stupid

20+ years in and it’s still like this for me when starting at a new place. The difference is experience lets you know not to worry. Practically nobody is a genius, and the geniuses are writing white papers, not code. My advice to you is to just delve into the code base and read as much as possible and follow along with how it works. If you want to get a leg up (which I would advise for a green person) do some of this in your spare time, as much as you can afford. Otherwise you will get experience with the code eventually through your day to day work regardless. Don’t get too invested in them though, you should move on as soon as possible (for a bunch of reasons).

is this normal

Feeling stupid in this situation is normal, you are just green and will be fine. The small business that operates like this is all too common, and you are not in the place to do anything about it, and I would not advise getting involved with trying to fix it. If you were an investor, then I would try to fix it. You should worry about you, not them. Use them as a stepping stone to your next opportunity.

to gauge how I am doing

Ask for a performance review. They may be too small to know how to do this properly, if at all, however. You know them, you will have to be the judge on if they will take kindly to that request. Any place that isn’t garbage should be happy to do that for you however. Agile/scrum would have metrics you could just look at to know how you are doing, any time, just saying.

there is no remote work and no headphones in the office

Here we are back to the dumb shit. They are leaving money and productivity on the table, and that is not the mark of a good business. Unhappy workers are not the mark of a good business. They might be smart coding wise, but they are not smart business wise, which is a real problem when the whole point is to make money. Imo you should get out ASAP, but that might involve sticking it out for at least another 6 months, so you have at least a year for the resume.

when is a good time to start looking for your second role

Always be looking. If I could go back in time and give myself one piece of career advice it would be this: always be looking, interview often, even if it’s just to say no, and never stay in one place more than a year or two. If I had done this, I would have been happier so much sooner, and would be making at least twice the money by now.

Do not be loyal to these folks, small businesses will cut you at the drop of a hat like any other business. For them it comes down to business no matter what.

In my opinion, for your career, you need to get on a real development team that does agile/scrum as soon as possible. Agile/scrum not a panacea, nor the end all be all, but it should give you a good reference for how well/things should function on a good development team.

You seem to have a good head on your shoulders, you are worried about the right things, and are asking the right questions. Good luck out there.

permalink
report
reply
0 points

Hey bud, I’m in the same boat.

I’m in my late 20s, been coding since middle school. Worked in the industry one way or another for 7 years or so.

Sadly you’re experiencing the reality of small-medium sized companies.

For the vast majority of my “career” I’ve been flying solo on my projects. Guessing what my boss/the customer means when they tell me what they want.

My advice is this: finish whatever project you’re on, or bring it to a point where you can reasonably hand it off. Use the remainder of your first year to find a new employer.

Try to go for a bigger company rather than another small one. Corporate bloat is annoying but there will be structure, seniors to help your skillset develop, code reviews, specified requirements etc.

Good luck!

permalink
report
reply
0 points

In short: it’s always like this, sometimes more, sometimes less. And guess what: it’s the main part of the job. As a developer you have to understand what the customer (your boss) needs (sometimes not what they say they want) and to figure out how to do that by yourself. It’s nice to have colleagues you can ask, but it’s like on stackoverflow. The accepted answer is not necessarily the right or good one. Often you have to work with bad documented legacy artifacts (code, api) and figure out what they do. Also the tech changes, you have to constantly keep up with changes and what was great years ago may now be outdated. My advice:

  • Do not start coding until you are sure you understood what is to be done.
  • if there is no user story to describe the task write it yourself
  • write good tests for your code. It’s an art. While thinking about corner cases you often find questions you did not think about at first
  • if you don’t know how to do it ask people around you, browse the web, read books. Develop the skills to figure stuff out. Most of the time noone knows the correct answer. It’s your job to find it.
  • do code reviews with others, usually both benefit from it
  • write clean code

If you don’t like your working environment then change it. Especially when you think you can’t learn anything new there or it is no fun to work there. Go to meetings in your area (meetup or so) or online to meet other developers and ask them about their job. You get a feeling about what is considered a good job in your area. Good developers will always find a good job. Be one of them. As long as you think you’re a god who can code anything, that’s probably not the case. ;-) The best you can achieve is to be an expert in a very narrow field and to be good in some others.

permalink
report
reply
0 points

6 months is where you start to have good insights into and knowledge of areas of a decently complex project. It takes time.

There’s no “normal”. Processes, projects, and people vary greatly between companies.

Sounds like stuff in your processes and communication could be improved, by a lot for you.

This may be better communicated and discussed in person than by email. You can get their perspective, and offer yours, and what you think would improve processes, team synergy and collaboration.

permalink
report
reply

Asklemmy

!asklemmy@lemmy.ml

Create post

A loosely moderated place to ask open-ended questions

Search asklemmy 🔍

If your post meets the following criteria, it’s welcome here!

  1. Open-ended question
  2. Not offensive: at this point, we do not have the bandwidth to moderate overtly political discussions. Assume best intent and be excellent to each other.
  3. Not regarding using or support for Lemmy: context, see the list of support communities and tools for finding communities below
  4. Not ad nauseam inducing: please make sure it is a question that would be new to most members
  5. An actual topic of discussion

Looking for support?

Looking for a community?

Icon by @Double_A@discuss.tchncs.de

Community stats

  • 9.8K

    Monthly active users

  • 3.5K

    Posts

  • 74K

    Comments