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
Jose Valasquez
Apr 8, 2005

Jaded Burnout posted:

What languages etc do the big names usually use? Google is what, C++ typically, Facebook PHP, Amazon Java?
The most used languages at Google are C++, Java, Python, and Go (not necessarily in that order) for general development and Javascript/TypeScript for web development.
There are tons of things written in other languages too, but those are the approved languages.

Adbot
ADBOT LOVES YOU

lifg
Dec 4, 2000
<this tag left blank>
Muldoon
I suspect (but haven’t proven) that having BelovedBigTechCo on your resume will get you past every HR resume screener out there.

But now that I think about it, that would be easy to test.

mrmcd
Feb 22, 2003

Pictured: The only good cop (a fictional one).

lifg posted:

I suspect (but haven’t proven) that having BelovedBigTechCo on your resume will get you past every HR resume screener out there.

But now that I think about it, that would be easy to test.

What if you wrote a manifesto though?

wilderthanmild
Jun 21, 2010

Posting shit



Grimey Drawer

mrmcd posted:

What if you wrote a manifesto though?

Gotta apply at Hatreon

vonnegutt
Aug 7, 2006
Hobocamp.

Good Will Hrunting posted:

Speaking of which, have you folks ever worked somewhere with 0 "scrum" or "scrum like" practices? Like, we just have a giant board of tickets. We do no planning, grooming, discussion or anything and frequently make our own tickets. There are no sprints or points assigned because my boss things it's a "waste" but myself and peers think it's to reduce transparency. Our new team lead is all for doing a bi-weekly retro and planning, which I like.

Fair warning: this is something I feel very strongly about.

A lot of tech people think of any non-code work activities as "wasteful". However, unless your team can fit into a small room, you need to have some codification to your communication or you end up with problems. The whole "left hand doesn't know what the right hand is doing" problem.

If you are making your own tickets, how do you know that the ticket you're writing doesn't already exist on the board?
How do you know that you and another team member haven't already implemented the same code in parallel, or written code that stomps all over a solution from a week prior?

Grooming is super important to keep the board from piling up with useless tickets - is a major bug being ignored over and over again because it's lacking steps to reproduce? Are some problems no longer problems because they were solved another way?

In my experience, the best way to increase the productivity of a team is to remove obstacles from their work. If each dev has to check each ticket against all the other ones and current codebase, that's wasting a ton of time. A team lead who can remove a greater-than-zero amount of useless tickets has prevented the entire team from having to do that individually.

minato
Jun 7, 2004

cutty cain't hang, say 7-up.
Taco Defender

Jaded Burnout posted:

What languages etc do the big names usually use? Google is what, C++ typically, Facebook PHP, Amazon Java?
Facebook is C++ for anything that required performance, Python for anything that didn't, and smatterings of Java, Go, & Haskell. Lots of bash scripts. All front-end stuff is done in Hack, which is to PHP as Kotril is to Java (i.e it fixes some of the particularly lovely bits).

Star War Sex Parrot
Oct 2, 2003

Is anyone besides Mozilla using Rust?

prisoner of waffles
May 8, 2007

Ah! well a-day! what evil looks
Had I from old and young!
Instead of the cross, the fishmech
About my neck was hung.

vonnegutt posted:

Fair warning: this is something I feel very strongly about.

A lot of tech people think of any non-code work activities as "wasteful". However, unless your team can fit into a small room, you need to have some codification to your communication or you end up with problems. The whole "left hand doesn't know what the right hand is doing" problem.

If you are making your own tickets, how do you know that the ticket you're writing doesn't already exist on the board?

If each dev has to check each ticket against all the other ones and current codebase, that's wasting a ton of time. A team lead who can remove a greater-than-zero amount of useless tickets has prevented the entire team from having to do that individually.

Had to resist the urge to just quote-in-full your post, but that's less appropriate here / more of a YOSPOS thing?

I'm currently working somewhere that is trying to hire rapidly to scale up to the number of incoming projects we have and... being labor-limited on both the dev/SWE and business analyst/project manager job functions means we presently do almost zero non-code, non-test activities. Just have to make sure that the least-maintainable code only gets used by the least important customers, I guess.

AskYourself
May 23, 2005
Donut is for Homer as Asking yourself is to ...

Good Will Hrunting posted:

My bad - should have read more carefully. Too busy being my own product manager making Jira tickets for myself. Speaking of which, have you folks ever worked somewhere with 0 "scrum" or "scrum like" practices? Like, we just have a giant board of tickets. We do no planning, grooming, discussion or anything and frequently make our own tickets. There are no sprints or points assigned because my boss things it's a "waste" but myself and peers think it's to reduce transparency. Our new team lead is all for doing a bi-weekly retro and planning, which I like.

Yes I have experienced this. You'll have to trust your teammates, hopefully, they'll be good enough.
One way to make sure your work is valued by your superior is to ask business related question about the task at work. For example, if you are assigned a vague task like "Build a fartometer" then you should try to understand why the business need the fartometer ? How will the fartometer will produce value ? What's the market segment/target audience ? What's the fartometer life cycle ?

It's not easy but being able to understand this and deliver on it should make you look good... if the credit is given.

minato
Jun 7, 2004

cutty cain't hang, say 7-up.
Taco Defender

Good Will Hrunting posted:

Speaking of which, have you folks ever worked somewhere with 0 "scrum" or "scrum like" practices?
Yes, and it was a disaster. Everyone had their own project which made it hard to ask team members for help; they had zero insight or incentive to learn anything about what you were doing. Tickets got dished out to whoever had the most experience in the ticket's area, so nobody got experience in unfamiliar fields, further silo-izing everyone.

Scrum might have its issues but even if done poorly, you can still reap the benefits of getting people to work together as a team, instead of just being in a team.

Convincing people to try an alternative was difficult. If you don't have full buy-in from management, you can't implement Scrum. In desperation I ended up doing a "Scrum of 1" where I scheduled weekly grooming, retro, stakeholder demo, etc just for myself, and it worked fairly well. Having the ritual+discipline seems like 80% of successful project management.

prisoner of waffles posted:

we presently do almost zero non-code, non-test activities.
This is paying off your Visa with your Mastercard. It will eventually catch up with you, really hard.

Jaded Burnout posted:

gently caress. Is this about big O notation. Do I need to know "algorithms". I'm a web developer we glue together TCP services for a living.
Every coding test I've done this year involved a Big O question, so I guess you need to know it.

Although it occurs to me that Big O isn't a great signal for a couple of reasons:
- Everyone asks it because Google asks it, but the reason Google asks it is that Big O matters at scale **waves hands mysteriously**. If you're not doing Google scale then it probably won't come up in your day-to-day job. (Hell, I worked on one of the biggest systems in the world and it hardly ever came up there either)
- Big O's purpose as an algorithm comparator is undermined in the age of multi-core/distributed computing. It's possible for (say) a highly-parallelizable O(n2) algorithm to beat an non-parallelizable O(n) algorithm.

New Yorp New Yorp posted:

They all have a lot of different languages in use and they usually don't care what kind of language background you have as long as you have good CS fundamentals.
I'm not disagreeing, but in my experience "knowing a language" is about 15% being able to read/write the syntax, and 85% knowing the ecosystem of build tools, libraries, frameworks, and techniques that go with that system. A half-decent programmer can learn a language in a day or two... but it can take years to become an expert in the rest of it. So being able to state that you're an expert in a certain language can carry a lot of weight.

lifg
Dec 4, 2000
<this tag left blank>
Muldoon
Big-O is useful. If you don’t know about traveling salesman type problems, it’s easy to accidentally recreate it in your code in weirdly boring places.

Plus writing algorithms is like the core of computer science. Why not learn its limitations?

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

Star War Sex Parrot posted:

Is anyone besides Mozilla using Rust?
Yes.

minato posted:

- Big O's purpose as an algorithm comparator is undermined in the age of multi-core/distributed computing. It's possible for (say) a highly-parallelizable O(n2) algorithm to beat an non-parallelizable O(n) algorithm.
This is confused. You don't have an infinite number of cores, so the asymptotic complexity of your algorithms matters exactly as much as it always has: rather less so than the absolute time it takes in practice on the datasets you actually need to handle.

Ralith fucked around with this message at 05:26 on Nov 15, 2017

prisoner of waffles
May 8, 2007

Ah! well a-day! what evil looks
Had I from old and young!
Instead of the cross, the fishmech
About my neck was hung.

minato posted:

This is paying off your Visa with your Mastercard. It will eventually catch up with you, really hard.

I agree strongly. I'm hoping we either staff up to a level where we can and do start paying attention to everything else or (worst case) we lose some of our somewhat overwhelming portfolio when the lovely code hits the fan.

Working mostly on pilot projects I feel as though I'm not likely to get stuck with too much technical debt that I have to support in production, but I'm probably making the bad assumption "that's a prototype, they'd never put it right into production."

Having everyone heads-down on their own small projects is a terrible waste; in our problem domain, it seems like a few clever engineers looking across the many project-specific sets of requirements could quickly come up with some powerful generalizations.

Doctor w-rw-rw-
Jun 24, 2008

lifg posted:

I suspect (but haven’t proven) that having BelovedBigTechCo on your resume will get you past every HR resume screener out there.

But now that I think about it, that would be easy to test.
It worked for me even though it was just an internship, even despite having a really strange career path - it was an automatic "hey let's not put this in the trash when we're sorting through this pile of resumes".

Star War Sex Parrot posted:

Is anyone besides Mozilla using Rust?

minato posted:

Facebook is C++ for anything that required performance, Python for anything that didn't, and smatterings of Java, Go, & Haskell. Lots of bash scripts. All front-end stuff is done in Hack, which is to PHP as Kotril is to Java (i.e it fixes some of the particularly lovely bits).
Think Kotlin is misspelled there.

Facebook also has some Rust (not very much at all) and OCaml-ish (Reason), Flow (Like TypeScript but more sound in terms of types) a poo poo-ton of Objective-C/Objective-C++, some Swift, and plenty of Android Java (which I don't really count as "full" Java).


With that said, if you're trying to make your career, you could also try targeting high growth companies. If that doesn't work out, yeah, totally, BigCo compensation is the bee's knees.

Jaded Burnout
Jul 10, 2004


minato posted:

Every coding test I've done this year involved a Big O question, so I guess you need to know it.

Although it occurs to me that Big O isn't a great signal for a couple of reasons:
- Everyone asks it because Google asks it, but the reason Google asks it is that Big O matters at scale **waves hands mysteriously**. If you're not doing Google scale then it probably won't come up in your day-to-day job. (Hell, I worked on one of the biggest systems in the world and it hardly ever came up there either)
- Big O's purpose as an algorithm comparator is undermined in the age of multi-core/distributed computing. It's possible for (say) a highly-parallelizable O(n2) algorithm to beat an non-parallelizable O(n) algorithm.

I'm not disagreeing, but in my experience "knowing a language" is about 15% being able to read/write the syntax, and 85% knowing the ecosystem of build tools, libraries, frameworks, and techniques that go with that system. A half-decent programmer can learn a language in a day or two... but it can take years to become an expert in the rest of it. So being able to state that you're an expert in a certain language can carry a lot of weight.

lifg posted:

Big-O is useful. If you don’t know about traveling salesman type problems, it’s easy to accidentally recreate it in your code in weirdly boring places.

Plus writing algorithms is like the core of computer science. Why not learn its limitations?

For the same reason I don't learn German; I don't go to Germany very often. And when I do they like to speak English.

With web development performance comes down to the following:
1. Can you make your pages cachable
2. Can you make as few DB queries as possible
3. Have you properly structured your database
4. Do you have the right indexes

That's it, you're off to the races. This is why Ruby thrives as a web language even for large scale sites despite being slow.

To that end I understand what Big-O is and what it's for, but the only part of it relevant to my 10 year career has been identifying n+1 queries. That's why I've not learned it.

As for writing algorithms being the core of computer science, sure, but I'm not a computer scientist, I'm a software engineer, they're different jobs.

I'm not against learning this stuff if it's relevant to the jobs, I was a little facetious in my post, but it's worth bearing in mind that you will not be asked these questions for a Ruby job. It's just not relevant.

Hughlander
May 11, 2005

Mniot posted:

People worry about "burning bridges" but getting hired and then immediately quitting is just not a big enough deal for anyone to remember you. When I think of people I would never want to work with again, it's all people I worked with for enough time to really build up some resentment.

Yes and no, individuals might but there's enough companies out there that it's not a big deal even if it happens. Years ago had a contract to hire come in and after a month he got a full time job elsewhere. Company was planning a layoff so I oked an exit plan for him at a small milestone. Lay off happens before milestone and then he leaves to his fulltime job. Recruiter that brought him in wanted to blacklist him 5 years later for leaving us like that. Uh whatever.

Pollyanna
Mar 5, 2005

Milk's on them.


I mean, I totally respect that viewpoint, and for backend web dev in particular I think it's about on the nose, assuming that your business logic is all in a row. But algorithms and big O are important mainly in an interview/performative fashion. I don't doubt that anyone can run into a big O-related problem, do some research, learn about the concept, and apply some solutions - people are generally smart and capable of learning, regardless of background. However, in many cases, interviewers want to know whether you already know about it and have run into problems like that before so they can feel more confident that they are hiring somebody who is experienced and capable - regardless of whether it's a realistic problem for their field.

Honestly, I don't place too much stock in classic data structures+algorithms stuff. The grand majority of fuckups and failures in projects aren't because of poor algorithms, but because of poor business analysis, project management, product development, and team cohesion/communication. Computers and algorithms are easy, people are hard. I would much prefer hiring somebody who knew their poo poo around a project and has experience creating something worthwhile and long-lasting over somebody that can Do A Big O Good.

Hughlander posted:

Yes and no, individuals might but there's enough companies out there that it's not a big deal even if it happens. Years ago had a contract to hire come in and after a month he got a full time job elsewhere. Company was planning a layoff so I oked an exit plan for him at a small milestone. Lay off happens before milestone and then he leaves to his fulltime job. Recruiter that brought him in wanted to blacklist him 5 years later for leaving us like that. Uh whatever.

The reason it's seen as a bad thing is because certain people, i.e. recruiters and hiring managers, see the short amount of time on your resume and see it as a reason to reject you without really bothering to dig further. As a pattern, it can be a little concerning (outside of cases like contractors and bad luck), but it's really not that big a deal in general.

I've had recruiters tell me I'm unhireable because I had a 1-year and 2-year stint at my last two jobs, so I might be biased.

Pollyanna fucked around with this message at 15:29 on Nov 15, 2017

Munkeymon
Aug 14, 2003

Motherfucker's got an
armor-piercing crowbar! Rigoddamndicu𝜆ous.



Doctor w-rw-rw- posted:

Flow (Like TypeScript but more sound in terms of types)

It's a static type checker that works on regular JavaScript where TypeScript is a superset that transpiles to JS.

Unless you're talking about some FB internal thing, in which case :can:

Munkeymon
Aug 14, 2003

Motherfucker's got an
armor-piercing crowbar! Rigoddamndicu𝜆ous.



Pollyanna posted:

I've had recruiters tell me I'm unhireable because I had a 1-year and 2-year stint at my last two jobs, so I might be biased.

So might the recruiters, but not all of them are going to be.

Hughlander
May 11, 2005

Ralith posted:

Yes.

This is confused. You don't have an infinite number of cores, so the asymptotic complexity of your algorithms matters exactly as much as it always has: rather less so than the absolute time it takes in practice on the datasets you actually need to handle.

The point is that given the workset most problems exist in something of a greater algorithmic complexity could end up being the faster solution. Such as if it's easily parallelizable. Look at the C++ implementation of std::sort for instance. On many implementations with size < 100 or so it just uses bubblesort. Oh no! That's N^2! So slow! But on modern cores with that small size it's actually faster than other choices.

quote:

The reason it's seen as a bad thing is because certain people, i.e. recruiters and hiring managers, see the short amount of time on your resume and see it as a reason to reject you without really bothering to dig further. As a pattern, it can be a little concerning (outside of cases like contractors and bad luck), but it's really not that big a deal in general.

I've had recruiters tell me I'm unhireable because I had a 1-year and 2-year stint at my last two jobs, so I might be biased.

Well you also need to figure out what's worthwhile on your resume. In the case I gave, the person didn't even list our company. He just gave one job ending Feb and the next starting April. And if I remember your posting you're talking about external recruiters which are universally a waste of time anyway. You should pay them as much credence in job searches as you do your parents.

Mniot
May 22, 2003
Not the one you know

Pollyanna posted:

The reason it's seen as a bad thing is because certain people, i.e. recruiters and hiring managers, see the short amount of time on your resume and see it as a reason to reject you without really bothering to dig further. As a pattern, it can be a little concerning (outside of cases like contractors and bad luck), but it's really not that big a deal in general.

I've had recruiters tell me I'm unhireable because I had a 1-year and 2-year stint at my last two jobs, so I might be biased.

Ehh... that's the opinion of a few recruiters, and the more junior you are the easier it is to dismiss your for any little thing out of place. I've interviewed people with 3 years of not staying for more than a year and didn't feel concerned.

But what I'm talking about is the case where wilderthanmild accepts a job at some local place while continuing to go through the hiring process at Microsoft. A month later, they get a great offer from Microsoft and quit. I'm saying that nobody from LittleCo will even remember them to hold a grudge. You wouldn't list them at all on your resume -- you can either just list job dates by year or trust that nobody cares if you have an empty month.

Good Will Hrunting
Oct 8, 2012

I changed my mind.
I'm not sorry.

AskYourself posted:

It's not easy but being able to understand this and deliver on it should make you look good... if the credit is given.

My team is stuck in an endless cycle of: get assigned 'task' from VP of Engi -> it has no spec so we try to come up with reqs and acceptance criteria and make our own Jira -> try to get spec details/reqs from product -> product ignores us or gives vague specs -> ??? -> try to build something -> say its "done" -> product says "we actually needed to do this" -> revisit.

The lack of context in any assignments we get is baffling to me. I can absolutely tell that our new tech lead feels the same way and sees it after 2.5 months, the issue is that I can also tell he sees how stubborn and daunting our VP is and is scared to address concerns or challenge him.

vonnegutt
Aug 7, 2006
Hobocamp.

Good Will Hrunting posted:

My team is stuck in an endless cycle of: get assigned 'task' from VP of Engi -> it has no spec so we try to come up with reqs and acceptance criteria and make our own Jira -> try to get spec details/reqs from product -> product ignores us or gives vague specs -> ??? -> try to build something -> say its "done" -> product says "we actually needed to do this" -> revisit.

After you try to come up with your own specs, are you returning to product and asking "This is what we're going to do, is this what you meant"? I find that's much more likely to produce a response of "No, we actually need X with options for Y and Z". A lot of product owners think a feature is "totally obvious" until presented with an equally obvious-but-wrong set of specs.

I am not a fan of pixel-perfect mockups / fakeups (front-end functionality w/out anything backing it up) most of the time, as they're too time consuming for most things, but they are usually less time consuming than actually building the thing and then having it be rejected over and over again. It might be helpful to start sending them that sort of thing - it's helped when I've had product owners who were bad at communicating.

Keetron
Sep 26, 2008

Check out my enormous testicles in my TFLC log!

TooMuchAbstraction posted:

Just had what I thought was a good technical discussion about why $coworker made the decisions they did in some code I was reviewing...and it turns out that $coworker's takeaway was that I wasn't respecting their experience and technical knowledge.

LeadershipInterpersonal relations is hard, yo. :sigh:

I found that many people have a hard time saying "I have no idea, this is just the way I think it would work and it does so that is why." Asking for reasoning makes them feel ashamed or something, while often I am really just curious as their reasoning might be better than mine which is often similar so I am looking for alternatives.

Good Will Hrunting
Oct 8, 2012

I changed my mind.
I'm not sorry.

vonnegutt posted:

After you try to come up with your own specs, are you returning to product and asking "This is what we're going to do, is this what you meant"? I find that's much more likely to produce a response of "No, we actually need X with options for Y and Z". A lot of product owners think a feature is "totally obvious" until presented with an equally obvious-but-wrong set of specs.

Last time I did this I was ignored for literally two weeks. Left more than 5 unanswered comments on Jira until my VP gave me half-assed replies. Then was told by product "we can discuss in person" and he kept dodging me. Then, had follow-up questions that product answered in a half-assed fashion. When we had a "review meeting" to review the work that was done, they kept saying "this needs to be done like this" and my engineering teammates and I just looked at each other like :staredog:. They couldn't be bothered to take the time to write this poo poo out before we spent time building everything.

Pollyanna
Mar 5, 2005

Milk's on them.


Good Will Hrunting posted:

My team is stuck in an endless cycle of: get assigned 'task' from VP of Engi -> it has no spec so we try to come up with reqs and acceptance criteria and make our own Jira -> try to get spec details/reqs from product -> product ignores us or gives vague specs -> ??? -> try to build something -> say its "done" -> product says "we actually needed to do this" -> revisit.

The lack of context in any assignments we get is baffling to me. I can absolutely tell that our new tech lead feels the same way and sees it after 2.5 months, the issue is that I can also tell he sees how stubborn and daunting our VP is and is scared to address concerns or challenge him.

Personally, if product wasn't working with us to get it done, I would go straight to the VP and tell him we can't do it.

The March Hare
Oct 15, 2006

Je rêve d'un
Wayne's World 3
Buglord
If tickets are unclear or missing AC it is our official policy that we will not work on them. The business owner of the ticket is responsible for making sure everything is properly specified in JIRA for the work they need done. This will typically be the dept head for whoever has requested the work. Every dept head knows this policy and as a result things end up very well specified for us in JIRA.

It's nice.

Munkeymon
Aug 14, 2003

Motherfucker's got an
armor-piercing crowbar! Rigoddamndicu𝜆ous.



Good Will Hrunting posted:

Last time I did this I was ignored for literally two weeks. Left more than 5 unanswered comments on Jira until my VP gave me half-assed replies. Then was told by product "we can discuss in person" and he kept dodging me. Then, had follow-up questions that product answered in a half-assed fashion. When we had a "review meeting" to review the work that was done, they kept saying "this needs to be done like this" and my engineering teammates and I just looked at each other like :staredog:. They couldn't be bothered to take the time to write this poo poo out before we spent time building everything.

I'd show up to the meeting and show them the empty project I made with the name they gave me and say something to the effect of "well this is what I could get done based on what you gave me, even after I begged you, so now tell me what it should do" but I can be kind of a dick, so that might not be the right way to deal with the problem.

Good Will Hrunting
Oct 8, 2012

I changed my mind.
I'm not sorry.
There's no accountability and honestly I know it'll affect my bonus in Q1 but I'd love to see us miserably fail on this project as a whole so our parent company finally wakes up and sees how inept my team's management is. The scary thing is my VP is so good at manipulating people that he'll probably be able to convince them it was the engineer's faults. I have some documentation about his ineptitude, but I stopped caring because I sorta took the attitude that, if that happens, I'd quit on the spot before working another day under him.

pigdog
Apr 23, 2004

by Smythe

Good Will Hrunting posted:

My team is stuck in an endless cycle of: get assigned 'task' from VP of Engi -> it has no spec so we try to come up with reqs and acceptance criteria and make our own Jira -> try to get spec details/reqs from product -> product ignores us or gives vague specs -> ??? -> try to build something -> say its "done" -> product says "we actually needed to do this" -> revisit.

The lack of context in any assignments we get is baffling to me. I can absolutely tell that our new tech lead feels the same way and sees it after 2.5 months, the issue is that I can also tell he sees how stubborn and daunting our VP is and is scared to address concerns or challenge him.

To an extent that's perfectly normal. Just don't say that it's "done", but that you've finished the first iteration and are now willing to listen to feedback.

Also, you have a weird situation in that you get your tasks straight from VP, but are then trying to get specs from "product" (product owner?). You need to have ONE source of requirements (=one source of truth). Normally the VP would talk to your PM that "we need this", the PM would figure out what it is, answer (or find answers to) all of devs' questions, and be responsible to the VP for the feature. The VP wouldn't talk to the devs and the devs wouldn't know or care what VP's opinion is - everyone has opinions, it's the PM's that matter.

pigdog fucked around with this message at 22:25 on Nov 15, 2017

AskYourself
May 23, 2005
Donut is for Homer as Asking yourself is to ...
I was wrong before but hopefully it's going to be true this time
https://blogs.msdn.microsoft.com/dotnet/2017/11/15/nullable-reference-types-in-csharp/

Good Will Hrunting
Oct 8, 2012

I changed my mind.
I'm not sorry.

pigdog posted:

To an extent that's perfectly normal. Just don't say that it's "done", but that you've finished the first iteration and are now willing to listen to feedback.

Also, you have a weird situation in that you get your tasks straight from VP, but are then trying to get specs from "product" (product owner?). You need to have ONE source of requirements (=one source of truth). Normally the VP would talk to your PM that "we need this", the PM would figure out what it is, answer (or find answers to) all of devs' questions, and be responsible to the VP for the feature. The VP wouldn't talk to the devs and the devs wouldn't know or care what VP's opinion is - everyone has opinions, it's the PM's that matter.

The VP gives us vague tasks, we go to PMs to get more requirements or details or answers to questions, that are rarely answered without pestering. We go back to the VP and he answers some of them, vaguely again. Never along this chain is there more than 1 or 2 sentences from the VP either in Slack or on Jira until we grill them with questions.

CPColin
Sep 9, 2003

Big ol' smile.

Ha ha that proposal sucks. It's like 40% of the way there, though; it just needs to get way more strict. And lol at the guy saying it's "a solution in search of a problem."

Love Stole the Day
Nov 4, 2012
Please give me free quality professional advice so I can be a baby about it and insult you

Thank you for your thoughts. When you say "proof of work, not proof of learning", do you think that the lack of responses implies whatever work I have done probably just isn't good enough?

As for finding startups which are hard-up for engineers or desperate enough to take a risk... where do you find those, exactly? How do you identify if a company is like that? Because I can look on a random job site for job titles at companies whose name I don't recognize, but I have no way of knowing how badly they're looking for people.




I actually keep a tally on a post-it note of how many jobs I apply to each year, how many interviews/callbacks I get, and how many offers I get. Starting next year, though, I'll probably make this into an Excel sheet so that I can keep track of the company names for situations like responding to posts like yours here. I'm pretty sure that all but maybe 2 or 3 of the jobs I've applied to so far this year, at least, have been at small firms. And by small firms, I mean companies whose name I don't recognize and aren't publicly traded. I don't know of any other way to define that.

As for networking with people at smaller companies, the people who I described in my post were a (friend of a)^4 and a guy who explicitly said "hey, i'll meet irl with anybody who sends me an e-mail." I don't really know how it's possible to meet and talk to people in smaller companies especially when I don't know anybody in common with them.

As for web dev meetups, I know that there is a thing for that Go language in my city, but when I went around looking for which technologies to learn as I described in my previous post I'm pretty sure I never saw Go mentioned anywhere. So I hadn't even considered it. As far as I can tell, that's about it in terms of local meetup groups. Am I wrong about this?

There's also an annual Unreal dev convention every year in my city, but despite trying to go there every year for the past 3 years it always somehow ends up being announced on the same day that the GF and I are leaving on a vacation that had been planned months before the event dates were announced. They always seem to schedule it during the big holiday breaks in this country.

As for the "move for/work remotely" part, you've probably hit the nail on the head there I'd imagine. Moved overseas after University because it was the only job I could get back after graduation in '10. Part of trying to transition to this career involves repatriation or otherwise settling in yet another country. It's not feasible to just go back to the US and sit around in some Motel looking for a job there because the cost of living whilst looking for a job is much higher.




It made sense at the time, though: all of my programming achievements have been in the context of creating stuff for PC games... so if I'm going to get a programming job, I'd most likely be able to get something related to what I've already done, right? But then I wonder how people who do more niche programming stuff (NLP, CV, Blockchain) get their feet in the door, so to speak, if that's really how this is supposed to work.




Thanks so much for your point-by-point advice. Tried looking up the USDS in the US on the USAJobs.gov site but unfortunately I don't see any openings there.

As for revising the resume further to word things in a better way, isn't that kind of what I've been going through all of this time? Every time I reach out and get advice, it always makes sense when they explain their reasoning but it never seems to have any effect on my actual results. Sometimes the advice is even contradictory.

As described in my previous post, my Web Dev stuff isn't anywhere near as plentiful and so I'm sure my latest CV iteration for web stuff definitely won't have anything to be impressed about because like I said, most of my programming achievements are related to modding and scripting and whatnot for games. I'll try to send you something soon, though.

brainwrinkle
Oct 18, 2009

What's going on in here?
Buglord
Any tips for getting the big bucks once you’ve been in the industry 5 years? I’m at a startup and enjoy it, but these numbers make me incredibly jealous. I’ve read the standard negotiating tips - since I don’t have any need to move on, is it a matter of just playing hardball on salary until a prospect bites?

I have friends at Google who are as senior or more senior than me, and in our salary discussions it doesn’t seem like they make as much as is implied in this tweet.

e: to clarify, my salary is pretty average for my title and region according to Glassdoor. How are people making 2-4X that in total comp? Just asking not so nicely in negotiations?

https://twitter.com/danluu/status/931018170420400128?s=17

brainwrinkle fucked around with this message at 06:57 on Nov 16, 2017

fantastic in plastic
Jun 15, 2007

The Socialist Workers Party's newspaper proved to be a tough sell to downtown businessmen.

Love Stole the Day posted:

As for networking with people at smaller companies, the people who I described in my post were a (friend of a)^4 and a guy who explicitly said "hey, i'll meet irl with anybody who sends me an e-mail." I don't really know how it's possible to meet and talk to people in smaller companies especially when I don't know anybody in common with them.

Use social media to determine who works at the company and, of those, who it would be useful for you to meet with. Find some premise to ask to meet them for 15 minutes and then write them an email. This might take some research on your part, both to find a premise you can try to work into a connection and also to research their email address. The email should be short and to the point, something like, "My name is Love Stole the Day, and I’m a junior developer who works in [your location]. I’m reaching out because [non-asking-for-a-job-reason why]. I’d love to learn more about [two or three specific things you’d like to learn from this person]. I'm sure you're very busy, so even a 15 minute phone call or Skype meeting would be appreciated."

If they don't write back within a week, follow-up with a gentle reminder. If they still don't write back after two emails, then it's probably best to move on.

quote:

As for web dev meetups, I know that there is a thing for that Go language in my city, but when I went around looking for which technologies to learn as I described in my previous post I'm pretty sure I never saw Go mentioned anywhere. So I hadn't even considered it. As far as I can tell, that's about it in terms of local meetup groups. Am I wrong about this?

If nothing else, you'll meet programmers at a Go meetup. Some of those programmers might know about local jobs and be in a position where they can say "Oh yeah, I know someone from the Go meetup who might be good for this." (Of course, if you're going to be bored at the Go meetup and not give a poo poo about anything but the networking part of it, this might not be an ideal strategy.)

That said, remember that the point of networking is to develop relationships which might eventually lead to opportunities.

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

brainwrinkle posted:

Any tips for getting the big bucks once you’ve been in the industry 5 years? I’m at a startup and enjoy it, but these numbers make me incredibly jealous. I’ve read the standard negotiating tips - since I don’t have any need to move on, is it a matter of just playing hardball on salary until a prospect bites?
That and not letting them know how badly you're currently being taken advantage of.

brainwrinkle
Oct 18, 2009

What's going on in here?
Buglord
I’m on the East Coast and talking to a company that wants to fly me out to SF to interview. Should I ask the recruiter for salary bands before agreeing to fly out? No point in wasting 12+ hours of my life on planes and airports if I’m not tempted by the salary.

mrmcd
Feb 22, 2003

Pictured: The only good cop (a fictional one).

brainwrinkle posted:


e: to clarify, my salary is pretty average for my title and region according to Glassdoor. How are people making 2-4X that in total comp? Just asking not so nicely in negotiations?

By living in NYC or SF. In a pinch Boston or Seattle too.

Also trading up for 20-30% raises from your last job, rinse repeat every 2-5 years.

Adbot
ADBOT LOVES YOU

mrmcd
Feb 22, 2003

Pictured: The only good cop (a fictional one).

Like I know I sound like a glib rear end in a top hat but that's actually 90% of it.

This one weird trick to triple your salary. Hiring managers hate it!

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