Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Cicero
Dec 17, 2003

Jumpjet, melta, jumpjet. Repeat for ten minutes or until victory is assured.
Depends on the company. I know almost nothing about SQL and Google still took me! :v:

Adbot
ADBOT LOVES YOU

Good Will Hrunting
Oct 8, 2012

I changed my mind.
I'm not sorry.

Cicero posted:

Depends on the company. I know almost nothing about SQL and Google still took me! :v:

I have 3 years of experience and beyond making sure my features are working correctly and pulling all results with a feature instance name and matching them with campaigns or users (I work on a trading system for ads, basically, and these queries are 4 lines with a few WHEREs) I don't query our SQL DB which holds mostly stuff our reporting and analytics teams use. I work mostly with targeting which we use Aerospike/Dynamo for, and campaign setup, which we use Mongo for. I'd be happy to chat about Mongo, Aerospike, and Dynamo, but SQL just isn't what I use and I don't pretend to be any sort of expert, yet people still ask me questions about it in literally every interview.

Maybe interviewers are just.. bad?

Che Delilas
Nov 23, 2009
FREE TIBET WEED

Good Will Hrunting posted:

Maybe interviewers are just.. bad?

Well, yes quite often, but not because they ask about SQL :v:. As other posters have said, many places want candidates that have at least some basic familiarity with SQL. Even if it's not on your resume, or obviously not something you're an expert in, they're going to try and find out what you know about it during the interview if they use it in their systems.

Stinky_Pete
Aug 16, 2015

Stinkier than your average bear
Lipstick Apathy

Cicero posted:

Depends on the company. I know almost nothing about SQL and Google still took me! :v:

Yeah I think Bigtable is different enough that it's not important

On another note, algorithmic fluency become more important when you're going to have to understand a confusing and esoteric system and may move into SRE at some point

I think DP-related problems are so popular because they demonstrate your ability to break down a problem into its components

Pollyanna
Mar 5, 2005

Milk's on them.


"Anything with production implications needs to be reviewed by me and <other engineer>"

"So, does that include me? Am I also on the production implications board?"

*silence*

Oh ok. :geno:

Let's talk Junior vs. Senior again. Had a talk with my co-worker about my role on the team and where I'm at in my effectiveness, and her assessment is that I'm a Junior dev and she's a Senior dev based on this criteria:

Junior dev: Can develop a feature.
Mid-level dev: Can develop and deploy a feature, and understands how the feature fits in to the overall app (feature "edges", etc.).
Senior dev: The above, and is in charge of design and systems of the app.

She says that since she takes on responsibility with the app as a whole (such that she mostly reviews PRs and writes up the team workflow), she's considered mid-to-senior. I, on the other hand, am apparently pretty good with code (such that I'm a big resource to the team for actual programming) but haven't learned how to really "own" the app and need to think more about feature edges in order to reach mid level. E/N aside, I've been on the team for about 2~3 less months than her, yet she's senior and I'm junior but fine, whatever.

Putting aside the hit to my confidence, is this a fair way of dividing up dev levels? This seems to make seniority more about overall project responsibility and project management than about actual competence and skill. Maybe I'm just biased, which is totally a thing, but I'm not satisfied with that setup.

And yeah, I'm kinda bitter about this. I spent most of my time on this project advocating for and trying to implement better practices and engineering, but apparently I've just been spinning my wheels for the past year since I'm apparently still a lovely junior engineer. I don't want to stay there, I want to grow out of it, and I thought I was getting there but apparently not.

I've already talked to my manager about my concerns and we talked about how to improve as an engineer (basically get more Experience+Exposure as opposed to Education), and I've got a plan, but I can't help but feel it's a little unfair. But hey, maybe it isn't, so I'm open to being proven wrong. I'll get over it eventually, anyway.

moctopus
Nov 28, 2005

Pollyanna posted:

"Anything with production implications needs to be reviewed by me and <other engineer>"

"So, does that include me? Am I also on the production implications board?"

*silence*

Oh ok. :geno:

Let's talk Junior vs. Senior again. Had a talk with my co-worker about my role on the team and where I'm at in my effectiveness, and her assessment is that I'm a Junior dev and she's a Senior dev based on this criteria:

Junior dev: Can develop a feature.
Mid-level dev: Can develop and deploy a feature, and understands how the feature fits in to the overall app (feature "edges", etc.).
Senior dev: The above, and is in charge of design and systems of the app.

She says that since she takes on responsibility with the app as a whole (such that she mostly reviews PRs and writes up the team workflow), she's considered mid-to-senior. I, on the other hand, am apparently pretty good with code (such that I'm a big resource to the team for actual programming) but haven't learned how to really "own" the app and need to think more about feature edges in order to reach mid level. E/N aside, I've been on the team for about 2~3 less months than her, yet she's senior and I'm junior but fine, whatever.

Putting aside the hit to my confidence, is this a fair way of dividing up dev levels? This seems to make seniority more about overall project responsibility and project management than about actual competence and skill. Maybe I'm just biased, which is totally a thing, but I'm not satisfied with that setup.

And yeah, I'm kinda bitter about this. I spent most of my time on this project advocating for and trying to implement better practices and engineering, but apparently I've just been spinning my wheels for the past year since I'm apparently still a lovely junior engineer. I don't want to stay there, I want to grow out of it, and I thought I was getting there but apparently not.

I've already talked to my manager about my concerns and we talked about how to improve as an engineer (basically get more Experience+Exposure as opposed to Education), and I've got a plan, but I can't help but feel it's a little unfair. But hey, maybe it isn't, so I'm open to being proven wrong. I'll get over it eventually, anyway.

I don't work with you or the people around you, but a lot of the time yes people make senior because they can plan/own/understand the big picture. Those are buzzwords I'm throwing out but I think you can get the general vibe/point I'm trying to get across.

Although sort of rare, I work with people that are brilliant coders, but just don't know how to create or take care of an application. And while I don't think anyone in our senior staff is bad at coding there are definitely a few that are there because they understand all of our company's pieces better than most.

A lot of people I see climb the ladder also really understand the business/client needs.

I don't know if that's an option for you, but one of the things you might be able to ask for is some small project that you own. You get out there and figure out what's needed, gather requirements, see how it fits in with the rest of your company's technology blah blah blah.

But even if you get that you might be SOL at your office. Sometimes people above you decide where you're at and that opinion can be hard to change.

Pollyanna
Mar 5, 2005

Milk's on them.


I definitely understand the need to support an application long-term, and to understand it from a high level. I'm guess I'm just reeling from the implication that I'm not nearly as effective as I thought I was, especially when compared to my one co-worker. Maybe that's just a "get rid of your pride" thing...

Edit: also the implication that I'm not trusted with making prod-level decisions even though I've been on the project for a comparable amount of time, and another engineer who joined two months ago is on it. I'm bitter and lovely I guess.

Pollyanna fucked around with this message at 19:23 on Oct 19, 2016

Skandranon
Sep 6, 2008
fucking stupid, dont listen to me

Pollyanna posted:

Let's talk Junior vs. Senior again. Had a talk with my co-worker about my role on the team and where I'm at in my effectiveness, and her assessment is that I'm a Junior dev and she's a Senior dev based on this criteria:

At some point, yes, the divide between Senior and not-Senior developer is more to do with effectively bearing responsibility and less to do with raw coding ability.

TooMuchAbstraction
Oct 14, 2012

I spent four years making
Waves of Steel
Hell yes I'm going to turn my avatar into an ad for it.
Fun Shoe
Yeah, gonna agree with the others here. The best hot-poo poo developer in the world...well, can get a ton of stuff done, no question. But for most of us, eventually the best way to improve our impact involves moving away from pure programming and towards some kind of leadership role. Not necessarily management, but a tech lead or systems architect or something, where you're focusing more on the big picture and less on the nuts and bolts.

That said, this is the kind of thing where you should bring it up with management, and say "hey, look, I've been doing a ton of work for this project that I think is super important and has helped the business in X, Y, and Z concrete ways, and I don't feel that I'm getting the recognition I deserve for that work." Ideally they'll have some kind of individual-contributor ladder that's parallel to the leadership ladder and that doesn't have terms that imply any kind of seniority, but that might be asking a bit much of their titling system. You ought to be able to get compensation commensurate to your contribution though.

moctopus
Nov 28, 2005

Pollyanna posted:

I definitely understand the need to support an application long-term, and to understand it from a high level. I'm guess I'm just reeling from the implication that I'm not nearly as effective as I thought I was, especially when compared to my one co-worker. Maybe that's just a "get rid of your pride" thing...

It's tough to figure this stuff out and you may very well be as effective as you think you are. They may just not want to promote you.

There is a guy on our team I thought was an intern not much knowledge. And to this date he continues to destroy nearly everything he touches and he has his own team. It's extremely confusing to me. He is not effective at anything and I used to have to practically rewrite everything he did. But he's very, very nice and one of the best fits to our company's culture so he keeps rising and rising.

The architect on my team writes pretty decent code, some is really good, some is really bad. But he knows about every single system we have running at our company and how they all communicate so all sorts of people have to go to him for help. Not for how to code things but for explanations of what things are and how to use them and that's a major value.

You can do the exact things they mentioned and then in your next review bring them up and ask for a promotion. Depending on how much experience you actually have if they turn you down again it might be time to shop around.

I had a friend leave the company because he was on a team and was leading it... doing all the things required to be a senior software engineer, but they turned him down when he asked for the promotion. So he left and they tried to keep him by promoting him but was too late for him.

Good Will Hrunting
Oct 8, 2012

I changed my mind.
I'm not sorry.
Round 3 of the place that had me do the technical take-home that I thought I did really well on.

First: Phone screen with a programming question about maps
Second: Take home
Today:
1 hour culture fit
1 hour pair programming session that was all about debugging in Sublime Text
1 hour lunch
1 hour system design essentially "build Instagram"

Felt like I definitely did a lot poorer on the 2 in-person technical assessments than I did on the phone screen and take-home. They still feel like such a poor reflection of my actual skill set and I end up so burnt out and uncomfortable in person.

Good Will Hrunting fucked around with this message at 19:40 on Oct 19, 2016

Pollyanna
Mar 5, 2005

Milk's on them.


Alright, I get it. Feelings of fairness aside (which aren't worth dwelling on), I see that the road to improvement is focused more on project management and responsibility. Does that mean that to advance my career/get senior, I need to transition into more lead roles? That makes me kind of nervous, cause I don't feel like leadership or management is my best strength. I just wanna code. If it's more about having a stake in the project's lifecycle, then I had been hoping to get that with this project, but for a few reasons it hasn't really worked out and I'm thinking of moving to another project, which might sound kind of immature but it's the truth.

moctopus
Nov 28, 2005

Pollyanna posted:

Alright, I get it. Feelings of fairness aside (which aren't worth dwelling on), I see that the road to improvement is focused more on project management and responsibility. Does that mean that to advance my career/get senior, I need to transition into more lead roles? That makes me kind of nervous, cause I don't feel like leadership or management is my best strength. I just wanna code. If it's more about having a stake in the project's lifecycle, then I had been hoping to get that with this project, but for a few reasons it hasn't really worked out and I'm thinking of moving to another project, which might sound kind of immature but it's the truth.

Well what do you care the most about? The title? The pay? Getting to do want you want most of the time?

Also ask yourself if you're actually not happy in your position. Why are you chasing a promotion? At my last job a guy turned down a promotion to architect and a promotion to a team leader because he didn't want to do anything but code.

Usually in order to get promoted you have to show people that aren't developers and that may not be technical at all that you have additional worth outside the other developers.

That's gonna be done by mentoring, working with customers, being a part of meetings/calls/conferences where you figure just what the hell this app is gonna do and being able to communicate to said people.

If an app works your CEO isn't gonna notice how your understanding of the advanced concepts of the language it was written in is stronger than some other dev's.

You don't specifically have to go into project management/team leadership you just have to be able to work with those types and speak a common language to come up with solutions that start before a dev starts coding.

That being said there ARE place where you'll become senior by being the best coder in the office, but you still gotta show that to people or to your technical lead.

Pollyanna
Mar 5, 2005

Milk's on them.


moctopus posted:

Well what do you care the most about? The title? The pay? Getting to do want you want most of the time?

Also ask yourself if you're actually not happy in your position. Why are you chasing a promotion? At my last job a guy turned down a promotion to architect and a promotion to a team leader because he didn't want to do anything but code.

Usually in order to get promoted you have to show people that aren't developers and that may not be technical at all that you have additional worth outside the other developers.

That's gonna be done by mentoring, working with customers, being a part of meetings/calls/conferences where you figure just what the hell this app is gonna do and being able to communicate to said people.

If an app works your CEO isn't gonna notice how your understanding of the advanced concepts of the language it was written in is stronger than some other dev's.

You don't specifically have to go into project management/team leadership you just have to be able to work with those types and speak a common language to come up with solutions that start before a dev starts coding.

That being said there ARE place where you'll become senior by being the best coder in the office, but you still gotta show that to people or to your technical lead.

It's not so much that I want to be promoted, so much as a feeling that over the course of time on this project I've actually been demoted.

The project was in a rough state when I joined, and from the start I advocated for better dev practices, improving our agile-ness, implementing CICD and test suite, user feedback and design specs, etc. I was received as an outsider bringing positive change to the project, which I was happy about and felt empowered by. Over time, we've gotten closer and closer to these goals, although not as quickly as I'd liked. But as time went by, I felt that although we were accomplishing more and more, I was becoming less and less appreciated by the team. I didn't feel like my advocacy was recognized or that I was a positive force on the team. In fact, I feel like I've regressed in contributing to the project.

I've also felt that I've started receiving less and less positive feedback and more criticism of code/opinions. I'm questioned on specific syntax choices (e.g. array destructuring and iterating over a hash/associative array) with the implication that doing so is considered harmful to other coders, feel less trusted to review a PR and like I have to run all my opinions and comments through the team lead (the coworker in question), and just taken less seriously than before.

That's why I say it's a demotion - I feel like I've gotten worse as an engineer and team member, not better. Maybe I'm imagining it, but it's an environment that frustrates me and I'm genuinely bothered by it. My co-worker seems like she trusts me less and takes me less seriously, and that makes me feel like a fuckup.

Basically,

moctopus
Nov 28, 2005

Pollyanna posted:

It's not so much that I want to be promoted, so much as a feeling that over the course of time on this project I've actually been demoted.

The project was in a rough state when I joined, and from the start I advocated for better dev practices, improving our agile-ness, implementing CICD and test suite, user feedback and design specs, etc. I was received as an outsider bringing positive change to the project, which I was happy about and felt empowered by. Over time, we've gotten closer and closer to these goals, although not as quickly as I'd liked. But as time went by, I felt that although we were accomplishing more and more, I was becoming less and less appreciated by the team. I didn't feel like my advocacy was recognized or that I was a positive force on the team. In fact, I feel like I've regressed in contributing to the project.

I've also felt that I've started receiving less and less positive feedback and more criticism of code/opinions. I'm questioned on specific syntax choices (e.g. array destructuring and iterating over a hash/associative array) with the implication that doing so is considered harmful to other coders, feel less trusted to review a PR and like I have to run all my opinions and comments through the team lead (the coworker in question), and just taken less seriously than before.

That's why I say it's a demotion - I feel like I've gotten worse as an engineer and team member, not better. Maybe I'm imagining it, but it's an environment that frustrates me and I'm genuinely bothered by it. My co-worker seems like she trusts me less and takes me less seriously, and that makes me feel like a fuckup.

Basically,



Some of that sounds pretty bad.

Do you think maybe for some of feeling-of-lowered-appreciation could be because as you brought in new/positive practices people needed your help in doing them right and as they've learned they have become more autonomous and don't need to seek you out?

Maybe you do get more criticism now, but could it be because you're not so new to the team anymore and everyone is more comfortable opening? Or does it feel toxic?

I doubt you could have gotten possibly gotten worse as an engineer. Do you ever feel maybe your opinions on some of these ideas came on as too strong?

Looking at this from only your point of view some of the things in there make me strongly suggest looking around for another job.

Mao Zedong Thot
Oct 16, 2008


You might just work with assholes.

necrobobsledder
Mar 21, 2005
Lay down your soul to the gods rock 'n roll
Nap Ghost
Figuring out what gets you out of bed and motivated to do more than the bare minimum each day of life is essential for both progression and content in one's career (partly because if you haven't defined your axes, you have no idea if anything is forward or backward, derp). I've never heard of anyone that's achieved success and a shred of happiness without having a very clear idea of this earlier in life. Without setting goals and making steps, you're basically floating with the whims of those around you (including those that simply see you as an object on their route forward) unless you're totally happy with everyone around you; this usually leads to resentment and disappointment. Figure out your KPIs of life or something and work backwards.

If you don't think you can handle it, you probably shouldn't aim for a lead role (so controversial!). Being mentally prepared and excited to do a job is really important even if you're not looking for career advancement. Not sure what the consternation is about besides a primarily E/N thing here.

Pollyanna
Mar 5, 2005

Milk's on them.


moctopus posted:

Some of that sounds pretty bad.

Do you think maybe for some of feeling-of-lowered-appreciation could be because as you brought in new/positive practices people needed your help in doing them right and as they've learned they have become more autonomous and don't need to seek you out?

Maybe you do get more criticism now, but could it be because you're not so new to the team anymore and everyone is more comfortable opening? Or does it feel toxic?

I doubt you could have gotten possibly gotten worse as an engineer. Do you ever feel maybe your opinions on some of these ideas came on as too strong?

Looking at this from only your point of view some of the things in there make me strongly suggest looking around for another job.

I would be happy if my teammates didn't need to rely on me for best practices and guidance. For some of them, yeah, they've gotten better. For some, they're not quite there yet.

We've been pretty open since the start, and that hasn't really changed. It feels more stressful and "on edge" now.

Having strong opinions, especially on other people's code, is a common problem among the team, yes. Our PM has given us a talking-to about being more mindful of other engineers, and I've been watching myself in that regard.

I'm not jumping directly to :yotj: since I only started this job 10 months ago, and that's how long I was at my last job. It depends on how the future shakes out.

necrobobsledder posted:

Being mentally prepared and excited to do a job is really important even if you're not looking for career advancement.

This is where I want to be. Unfortunately, I don't really know what I want to do or what to work towards. Doing that KPI exercise sounds like good practice for me.

quote:

Not sure what the consternation is about besides a primarily E/N thing here.

My questions about junior vs. senior is what's most relevant, the rest is E/N and I'll take it there.

asur
Dec 28, 2012
There's a big difference between project management and technical leadership and you seem to be conflating the two. Some companies require the former to be promoted to senior or higher, but pretty much all companies will require the latter as it's what increases your impact.

Good Will Hrunting
Oct 8, 2012

I changed my mind.
I'm not sorry.
Side note: it's fairly off-putting to do a 6 hour assignment for a company and get called in only for your system design interviewers to tell you they haven't even read your resume. Algo questions, fine, whatever, but you really aren't going to even ask me about any of the systems I've built in a system design interview?

return0
Apr 11, 2007

Pollyanna posted:

We've been pretty open since the start, and that hasn't really changed. It feels more stressful and "on edge" now.

I was once in a startup environment where people could provide a robust constructive criticism and it would be taken in good faith and acted on. That team had an excellent engineering ethic and commitment to best practices, with support from management. Working there at that point was honestly great fun.

Then came a period of 12 months where things weren't going so well for the business, resources became constrained and people became stressed and frustrated, and ceremonies that were previously positive and healthy became cathartic venting sessions. The atmosphere became worse, because people were ostensibly doing the same things as before, but not in good faith.

The business eventually picked up again, but the mood on the team hadn't recovered - people were more guarded, non-trusting, and less open with each other. Maybe something similar is happening at your place. If the other engineer is really perceived as more senior, maybe they are under additional pressure to perform, and in turn they are taking our their frustration on you?

Hughlander
May 11, 2005

Pollyanna posted:

"Anything with production implications needs to be reviewed by me and <other engineer>"

"So, does that include me? Am I also on the production implications board?"

*silence*

Oh ok. :geno:

Let's talk Junior vs. Senior again. Had a talk with my co-worker about my role on the team and where I'm at in my effectiveness, and her assessment is that I'm a Junior dev and she's a Senior dev based on this criteria:

Junior dev: Can develop a feature.
Mid-level dev: Can develop and deploy a feature, and understands how the feature fits in to the overall app (feature "edges", etc.).
Senior dev: The above, and is in charge of design and systems of the app.

She says that since she takes on responsibility with the app as a whole (such that she mostly reviews PRs and writes up the team workflow), she's considered mid-to-senior. I, on the other hand, am apparently pretty good with code (such that I'm a big resource to the team for actual programming) but haven't learned how to really "own" the app and need to think more about feature edges in order to reach mid level. E/N aside, I've been on the team for about 2~3 less months than her, yet she's senior and I'm junior but fine, whatever.

Putting aside the hit to my confidence, is this a fair way of dividing up dev levels? This seems to make seniority more about overall project responsibility and project management than about actual competence and skill. Maybe I'm just biased, which is totally a thing, but I'm not satisfied with that setup.

And yeah, I'm kinda bitter about this. I spent most of my time on this project advocating for and trying to implement better practices and engineering, but apparently I've just been spinning my wheels for the past year since I'm apparently still a lovely junior engineer. I don't want to stay there, I want to grow out of it, and I thought I was getting there but apparently not.

I've already talked to my manager about my concerns and we talked about how to improve as an engineer (basically get more Experience+Exposure as opposed to Education), and I've got a plan, but I can't help but feel it's a little unfair. But hey, maybe it isn't, so I'm open to being proven wrong. I'll get over it eventually, anyway.

You started your career two years ago. Chances are very strong that you're a junior. It has nothing to do with time on project vs not. If it was time on project would you expect that someone with 15 years of professional experience, 10 of it in web dev would be a junior because they just came on the project? You just haven't had the breadth of experience to know long term what's going to be good for the design of the app. Look at your other specific example

quote:

I'm questioned on specific syntax choices (e.g. array destructuring and iterating over a hash/associative array)

What does the rest of the code base use? Does it do hashes or array destructuring? Does it do a mix? If so when is each going to be chosen? When you chose the hash approach what was the thought process as to why to do it that way? If you are in a non-toxic environment they are going to be trying to get you to the senior and the reason why they're questioning the choice is so that you do the same questioning instinctively and without it being brought up. Why? Because that's what a senior person does. And if it is a toxic environment then get out, but strongly look at yourself first since this would be multiple toxic environments in a row for someone two years into their career.

Pollyanna
Mar 5, 2005

Milk's on them.


Hughlander posted:

You started your career two years ago. Chances are very strong that you're a junior. It has nothing to do with time on project vs not. If it was time on project would you expect that someone with 15 years of professional experience, 10 of it in web dev would be a junior because they just came on the project? You just haven't had the breadth of experience to know long term what's going to be good for the design of the app. Look at your other specific example


What does the rest of the code base use? Does it do hashes or array destructuring? Does it do a mix? If so when is each going to be chosen? When you chose the hash approach what was the thought process as to why to do it that way? If you are in a non-toxic environment they are going to be trying to get you to the senior and the reason why they're questioning the choice is so that you do the same questioning instinctively and without it being brought up. Why? Because that's what a senior person does. And if it is a toxic environment then get out, but strongly look at yourself first since this would be multiple toxic environments in a row for someone two years into their career.

I don't know. gently caress it. I'm just going to cut the E/N bullshit and go with the still-a-junior thing since everything points that way. If it's time and experience that I need, not much else to do but throw my hands up and wait.

One day, I'll care about being senior and taking on a bunch of responsibility, but that day is far off. Until then, I'll just nerd out on dumb programming poo poo. This is not worth obsessing over.

TooMuchAbstraction
Oct 14, 2012

I spent four years making
Waves of Steel
Hell yes I'm going to turn my avatar into an ad for it.
Fun Shoe

Pollyanna posted:

I don't know. gently caress it. I'm just going to cut the E/N bullshit and go with the still-a-junior thing since everything points that way. If it's time and experience that I need, not much else to do but throw my hands up and wait.

One day, I'll care about being senior and taking on a bunch of responsibility, but that day is far off. Until then, I'll just nerd out on dumb programming poo poo. This is not worth obsessing over.

I mean, it's absolutely worth having long-term goals and trying to guide your immediate activities so that they in some way work towards those goals. Just as a general life thing, let alone as a career thing. But at the same time you don't want to obsess over those goals to the exclusion of everything else. Plus it's not remotely uncommon for people to "faff about" for 3-10 years before they find the domain they really want to work in and become an expert in. And plenty of people never find that domain, or find it when they're in their 50's or 80's even, and there's nothing wrong with that either.

Especially in your first few jobs, if I were you I'd focus on learning how I work best, what lessons I can learn from the environment I'm in, and what specifically I like and dislike about the job so I can do better next time.

Pollyanna
Mar 5, 2005

Milk's on them.


Really, I care about this so much because I don't wanna piss someone off enough to get fired. I gotta get the rest of my life in order first. Right now, I just wanna write code and do cool stuff.

Skandranon
Sep 6, 2008
fucking stupid, dont listen to me

TooMuchAbstraction posted:

I mean, it's absolutely worth having long-term goals and trying to guide your immediate activities so that they in some way work towards those goals. Just as a general life thing, let alone as a career thing. But at the same time you don't want to obsess over those goals to the exclusion of everything else. Plus it's not remotely uncommon for people to "faff about" for 3-10 years before they find the domain they really want to work in and become an expert in. And plenty of people never find that domain, or find it when they're in their 50's or 80's even, and there's nothing wrong with that either.

Especially in your first few jobs, if I were you I'd focus on learning how I work best, what lessons I can learn from the environment I'm in, and what specifically I like and dislike about the job so I can do better next time.

I can definitely attest to this. I did the "faffing about" in .NET webdev land for 6 years before landing in Angular/TypeScript SPA land, which I enjoy much more, but having a strong, statically typed language background informs how I structure things using TypeScript to get maximal benefit from it's type checking features. Also, having a strong C# background helps when talking with the backend service developers about constructing APIs and architecture from the front end all the way down.

Stinky_Pete
Aug 16, 2015

Stinkier than your average bear
Lipstick Apathy
I will mostly be repeating what's been said already, but I read all this and was like "What? Only two years? Yeah of course you're junior!"

As I understand it, seniority is mostly to do with independence. How much are you expected to self-direct and come up with problems to solve and features to add by yourself?

Having introduced the team to valuable technologies and practices is an excellent thing to do and shows you care, but that is ancillary to your core competencies and experience as a developer. I made a big relative impact at my first company where I worked for 2 years, but it was also a small company so the scope of my tasks was pretty big, but they were all in accordance with what my manager told me to do, and I didn't expect that to change for quite a while because there's just too much to know about airplanes and what the gently caress we're doing. I was, however, going to ask for a raise if I didn't get hired at Google.

I'd ask for a raise.

Pollyanna
Mar 5, 2005

Milk's on them.


The raise is a tough one, since what they do is pay market average for software devs and recoup the rest with yearly bonuses. Which is dumb, cause since we're finance that means Brexit can screw me out of a bunch of money.

I'll worry about being senior, eh...eventually.

ultrafilter
Aug 23, 2007

It's okay if you have any questions.


Found a couple articles that put some data behind what a bunch of us have probably suspected for a while: technical interviewing is bullshit.

After a lot more data, technical interview performance really is kind of arbitrary
Who Y Combinator Companies Want

necrobobsledder
Mar 21, 2005
Lay down your soul to the gods rock 'n roll
Nap Ghost
It also shows stronger evidence for what we've suspected - people tend to like to hire those most like themselves even in terms of programming languages.

BlueInkAlchemist
Apr 17, 2012

"He's also known as 'BlueInkAlchemist'."
"Who calls him that?"
"Himself, mostly."
I'm doing the occasional search for "entry level" as I work on beefing up the resume and portfolio and it's difficult for me to tell if the "3+ years in [language]" is a serious requirement or meant to scare off less-serious candidates. I'd rather meet people in person and wedge a foot in the door than fire resumes off into the dark, but it's good to know what's out there, at least.

oliveoil
Apr 22, 2016

ultrafilter posted:

Found a couple articles that put some data behind what a bunch of us have probably suspected for a while: technical interviewing is bullshit.

After a lot more data, technical interview performance really is kind of arbitrary
Who Y Combinator Companies Want

That's a bullshit headline. The conclusion of that article, which they for some reason really, really don't want to make obvious, is that

quote:

we’ve learned that drawing on aggregate performance is much more meaningful than a making such an important decision based on one single, arbitrary interview.

The tl;dr of that article is "give your candidates than one interview because a single interview is unreliable". Just give people a bunch of interviews, and then reject the bottom 90% because it's impossible to distinguish them from the bottom 25%.

Mao Zedong Thot
Oct 16, 2008


BlueInkAlchemist posted:

I'm doing the occasional search for "entry level" as I work on beefing up the resume and portfolio and it's difficult for me to tell if the "3+ years in [language]" is a serious requirement or meant to scare off less-serious candidates. I'd rather meet people in person and wedge a foot in the door than fire resumes off into the dark, but it's good to know what's out there, at least.

It is not serious, just ignore 'x years required'. Pretty much every job I've ever had has been my first professional exposure to whatever niche/language. Big companies might be stringent and filter your resume on that garbage, but no hiring manager actually gives a gently caress how many years you've programmed XYZ, they just care that you will be able to shortly be productive in XYZ. It's gonna take you 3 months to be useful anywhere, regardless of whether or not you already know the language/tools, so if it takes you 4 months to be productive that's quite a lot better than someone that will be useless forever.

Mao Zedong Thot fucked around with this message at 04:59 on Oct 20, 2016

Ralith
Jan 12, 2011

I see a ship in the harbor
I can and shall obey
But if it wasn't for your misfortune
I'd be a heavenly person today
I always treat year counts as qualitative levels of expertise. No years means you've used it once, 3 years means you're comfortable/conversant in it, 10 years means you can win pedantic arguments about obscure details. Actual number of years is not relevant.

Stinky_Pete
Aug 16, 2015

Stinkier than your average bear
Lipstick Apathy

oliveoil posted:

That's a bullshit headline. The conclusion of that article, which they for some reason really, really don't want to make obvious, is that

The tl;dr of that article is "give your candidates than one interview because a single interview is unreliable". Just give people a bunch of interviews, and then reject the bottom 90% because it's impossible to distinguish them from the bottom 25%.

Yeah, basically your interview process is as good as its self-analysis. Ideally, multiple interviewers create independent scores, and each interviewer gets feedback on how consistently their scores predict a hire, in order to calibrate.

Good Will Hrunting
Oct 8, 2012

I changed my mind.
I'm not sorry.
I think I'm starting to hate the arbitrary system design questions more than the coding ones.

Kyth
Jun 7, 2011

Professional windmill tilter

Pollyanna posted:

I don't know. gently caress it. I'm just going to cut the E/N bullshit and go with the still-a-junior thing since everything points that way. If it's time and experience that I need, not much else to do but throw my hands up and wait.

One day, I'll care about being senior and taking on a bunch of responsibility, but that day is far off. Until then, I'll just nerd out on dumb programming poo poo. This is not worth obsessing over.

Some advice from a few decades in the future (and a few rungs up the ladder -- I'm an engineering director at a large tech company):

At almost exactly your point in my career, I was furious I wasn't considered a senior developer and spent a lot of energy being very stressed about it.

It wasn't until a bunch of years later that I got the perspective to understand why at only two years you can't be senior because you haven't seen enough (you may have that title, but it doesn't mean you are.) it's one of those unknown unknowns things too: you don't know what you don't know, so it's harder to see and understand.

When looking at my team and their levels, I expect our entry level to be about the first 1-5 years of someone's career (but it could go a few years longer too.) I expect them to know how to work independently when given a well-scoped problem. I expect them to write good code, know good practices, and be able to give constructive feedback on others code and designs.

For the next level, which is, say, at 2-10 years, I expect you to take an ambiguous problem and figure it out. Write a full design, understand what you need to do, find the best solution, implement. This isn't for a project sized at a few weeks of work either. I also expect you leading and mentoring, and maybe being the tech lead of a subset of our product -- at least you're the go to person for some reasonable piece of the product.

For the next level, you can stay there forever. And it's unlikely you're there until at least 5-6 years in, but maybe not until 10-12 years in. Here you are the one finding the ambiguous problems. You are breaking work into smaller pieces for others to do and understanding that, while you aren't a project manager, you do bear responsibility for making sure they can get their work done. You're the expert on the whole product and can significantly impact its direction. If need be, you could work completely independently and produce awesome work.

After that the skills change to leadership more explicitly: having impact outside of your team, becoming industry-recognized for things you do, etc.

None of this has anything to do with how long you've been working at a company. We regularly hire people into all these roles, which t definition means someone can be much more senior to you despite starting after you.

Chomposaur
Feb 28, 2010




Thanks for the great post, Kyth. I'm one year into my career and have been a bit discouraged by feedback that places me closer to average than above-average for my level -- even though I've been reassured that I'm doing good for my experience in the industry, it's always nice to see that "above average" rating.

But I think it's very true that I just don't have the context and experience to be driving projects, and that's really what drives progression up the ladder. I've sat in on a couple design meetings with people that have 5-10 years of experience, and they're able to make connections and fire off ideas and foresee potential problems cross-team much faster than I'd ever be able to right now.

I recently had the privilege to work briefly with one of the design gurus who created a huge framework that my large tech company rests on. He instantly understood some technical problems that me and a colleague had been banging our heads against for days, unraveled it with about five minutes of discussion, and then told us how to solve the next problem that we didn't know we'd encounter. It was clear that he was thinking of things on a completely different scope -- it felt like I was looking at code flashing by on the screen and he was seeing the Matrix.

speng31b
May 8, 2010

Pollyanna posted:

Really, I care about this so much because I don't wanna piss someone off enough to get fired. I gotta get the rest of my life in order first. Right now, I just wanna write code and do cool stuff.

I've read through your posts in this thread, and while I'm not going to type up anything as frankly awesome as Kyth up there, I will say that it seems unlikely your team as a whole hasn't noticed the same frustrations that you're expressing to us. I can't judge your technical competency compared to teammates as expressed here, so I'm not going to try. However - and not to snoop too much - just glancing at the first page of your overall forums posting history it seems like your frustrations with your teammates might be a little bit more specific and serious than some of the posts in this thread alone suggest. You don't seem to have a healthy attitude about your social environment at work right now, and you need to make getting that back into perspective your priority, or your current position might not be salvageable. Remember that you want these people for references even if your current environment isn't the right fit.

Adbot
ADBOT LOVES YOU

ExcessBLarg!
Sep 1, 2001
If you're early in your career I wouldn't focus so much on chasing the senior title, but rather make sure that the position you're in is offering sufficient opportunity for career growth.

Early in my career I was fortunate enough to work with seniors/managers/mentors who taught a lot about how to be successful in team and business-oriented settings. My growth at that time wasn't even so much in technical knowledge (for which schooling had prepared me well), but obtaining the practical work skils that Kyth mentioned. Anyways, I found working with these folks to be invaluable, but eventually they retired or moved on, or I moved on, and while I have different growth opportunities now it's more trial-and-error on my own.

While some of it is a matter of just gaining sheer experience, if you find yourself in a position where the people senior to you aren't really contributing constructively to your career growth, you might just not be in a good place. Similarly, even as a junior person you generally should be entrusted with additional responsibilities over time, and if not the people senior to you should be able to (if not regularly doing so) offer constructive criticism that highlight areas where you still have some growth to do.

To be honest, there's people who aren't very good at their jobs across all levels. How they get hired or promoted into such positions isn't necessarily logical or fair. At the end of the day though, if you find yourself in a position that's not helpful to your career, it's time to move on.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply