IT/Software career thread: Invert binary trees for dollars.

Lendarios

Trump's Staff
<Gold Donor>
19,360
-17,424
I personally think the architecture position is overrated. I see it more like a coordinator, that sets up a set of common rules. but there is nothing special to it. They don't have any special technical knowledge than developers don't have. It is just the person who has the more Business knowledge and can see how the little pieces fit together. So instead of having unrelated modules, you end up with reusable pieces.
 

Vinen

God is dead
2,783
490
I personally think the architecture position is overrated. I see it more like a coordinator, that sets up a set of common rules. but there is nothing special to it. They don't have any special technical knowledge than developers don't have. It is just the person who has the more Business knowledge and can see how the little pieces fit together. So instead of having unrelated modules, you end up with reusable pieces.
Architects put down a clear vision for a products architecture (really wanted to use a different word) and enforce that vision.
Without one person holding down that vision you can end up with a giant clusterfuckery of components which are all build differently and are expensive as fuck to maintain.

While they do not need to be an expert on every component which is implemented they do need have a full understanding of the technologies in-use and why the decision was made (ex: Relational Database vs NoSQL). This includes Business Reasons and not just Technical Reasons.
 

Lendarios

Trump's Staff
<Gold Donor>
19,360
-17,424

PS. im bored i have to watch Azure Clouds services now to implement message queues, so that video sums it up.
 

Obtenor_sl

shitlord
483
0
We do have QA Testers in our teams, however we approach developing completely TDD/BDD.

We have after our Sprint meetings a high level tester meeting where we use Cucumber to define our test cases in Gerkin (pretty much natural language) where PM, Developers, etc contribute to the things we're going to test for.

When the test predicates are complete we create the tests and start creating the code. Once the code passes the tests you know your condition of satisfaction is complete and your code is properly tested and covered.

Since I started doing my sprints by basing it off the tests defined my code velocity skyrocketed and quality as well. You guys don't do that?
 

Vinen

God is dead
2,783
490
We do have QA Testers in our teams, however we approach developing completely TDD/BDD.

We have after our Sprint meetings a high level tester meeting where we use Cucumber to define our test cases in Gerkin (pretty much natural language) where PM, Developers, etc contribute to the things we're going to test for.

When the test predicates are complete we create the tests and start creating the code. Once the code passes the tests you know your condition of satisfaction is complete and your code is properly tested and covered.

Since I started doing my sprints by basing it off the tests defined my code velocity skyrocketed and quality as well. You guys don't do that?
As much as I hate Agile development this is doing it right. Hats off to you

Have you ever seen this done in a geographically dispersed team spread across the world (US EST, US PST, INDIA, E EUR, CHINA) with around 200 developers :| This is our problem.
 

Obtenor_sl

shitlord
483
0
Yeah actually.

Half of my team is in Belfast, NI, a quarter in Cambridge, MA and the other quarter in Los Angeles.

Proper Sprint planning, we use JIRA Agile, we do story times, we break apart the tasks and people chose the ones they want to work in; we start with the tests and people take over coding the classes/modules needed from the developed tests.

Git/GitHub/Flowdock, is like we're next to each other, really.

Edit: O just read 200 people? Jesus christ. You need to break it into teams. Our developers are everywhere (Seattle, Austin, Cambridge, Ireland, LA) and there are plenty of teams. PM properly engages the teams to create a concerted Epic. Each team takes a set of stories to work on.

Again, isn't this how it should be? It seems so natural and easy to code and build stuff. You'll get some defects here and there but our sustaining process went from having a lot of sev1(criticals) and shitty test coverage to starting everything from TDD/BDD and going up. We haven't had a sev1 in several releases already.
 

Vinen

God is dead
2,783
490
Yeah actually.

Half of my team is in Belfast, NI, a quarter in Cambridge, MA and the other quarter in Los Angeles.

Proper Sprint planning, we use JIRA Agile, we do story times, we break apart the tasks and people chose the ones they want to work in; we start with the tests and people take over coding the classes/modules needed from the developed tests.

Git/GitHub/Flowdock, is like we're next to each other, really.

Edit: O just read 200 people? Jesus christ. You need to break it into teams. Our developers are everywhere (Seattle, Austin, Cambridge, Ireland, LA) and there are plenty of teams. PM properly engages the teams to create a concerted Epic. Each team takes a set of stories to work on.

Again, isn't this how it should be? It seems so natural and easy to code and build stuff. You'll get some defects here and there but our sustaining process went from having a lot of sev1(criticals) and shitty test coverage to starting everything from TDD/BDD and going up. We haven't had a sev1 in several releases already.
What you mean Virtual Teams made of people from all sites isn't acceptable!?
/sarcasim

Yeah, this is more or less what a new Sr. Director and I are pushing for. Each site needs to work on isolated functionality with the least amount of cross-dependencies as possible. As it stands right now a Team in India can be dependent on a team made of people from two other sites on the other side of the globe. it's effective.

It's a massive clusterfuck
 

Obtenor_sl

shitlord
483
0
Well part of your problem is outsourcing shit to India.

Don't get me wrong, I work with many smart talented Indian guys, but it is really like finding a needle in a haystack. The quality of any code that I've seen from Indian shops is abhorrent. We had our own internal project to outsource some work there and we went with some of the consulting services that are "Top" notch from India (not gonna name them but you probably know who they are) and the amount of work to fix whatever they were doing made us cancel the whole project. Quality was terrible, documentation non-existent (or just didn't make sense). They would break releases, commit non-functional code, ugh disaster.

That's why we moved to Ireland, much much better quality and work ethic; plus a quick trip from the East coast of the USA.

In my opinion, if your new Sr Director is smart he would need to cut the fat and the B players. Reorganize the teams and if you guys are really stuck in India for a while don't give them anything time-sensitive or "core" to your business.

Just my 2cents, I was one of the 3 managers handling an Indian remote team and that was a very sour experience.
 

Cad

scientia potentia est
<Bronze Donator>
24,498
45,439
Well part of your problem is outsourcing shit to India.

Don't get me wrong, I work with many smart talented Indian guys, but it is really like finding a needle in a haystack. The quality of any code that I've seen from Indian shops is abhorrent. We had our own internal project to outsource some work there and we went with some of the consulting services that are "Top" notch from India (not gonna name them but you probably know who they are) and the amount of work to fix whatever they were doing made us cancel the whole project. Quality was terrible, documentation non-existent (or just didn't make sense). They would break releases, commit non-functional code, ugh disaster.

That's why we moved to Ireland, much much better quality and work ethic; plus a quick trip from the East coast of the USA.

In my opinion, if your new Sr Director is smart he would need to cut the fat and the B players. Reorganize the teams and if you guys are really stuck in India for a while don't give them anything time-sensitive or "core" to your business.

Just my 2cents, I was one of the 3 managers handling an Indian remote team and that was a very sour experience.
This has been the same experience with India since at least the mid-late 90's when I first worked on a project with Indian developers. It's not going to change. Only the managers who see nothing but cost/benefit and don't actually have to work with them think India is a good idea.

One of the small companies I worked for their VC's had a parallel investment in an indian outsourcing shop and used their board seat to more or less force the issue of us hiring their shop as outsourcing... luckily I was a contractor and said, bye!
 

Vinen

God is dead
2,783
490
Well part of your problem is outsourcing shit to India.

Don't get me wrong, I work with many smart talented Indian guys, but it is really like finding a needle in a haystack. The quality of any code that I've seen from Indian shops is abhorrent. We had our own internal project to outsource some work there and we went with some of the consulting services that are "Top" notch from India (not gonna name them but you probably know who they are) and the amount of work to fix whatever they were doing made us cancel the whole project. Quality was terrible, documentation non-existent (or just didn't make sense). They would break releases, commit non-functional code, ugh disaster.

That's why we moved to Ireland, much much better quality and work ethic; plus a quick trip from the East coast of the USA.

In my opinion, if your new Sr Director is smart he would need to cut the fat and the B players. Reorganize the teams and if you guys are really stuck in India for a while don't give them anything time-sensitive or "core" to your business.

Just my 2cents, I was one of the 3 managers handling an Indian remote team and that was a very sour experience.
The India office is a real office for our company. This isn't an outsourced team. Globalization is real-
 

Lendarios

Trump's Staff
<Gold Donor>
19,360
-17,424
I had to direct manage the code provided by Chetu, and that was horrible, after giving them a 1hr. long explanation of what our standards were, an how we want the work to be done, they went ahead and just tagged into existing stored procedures, instead of creating new classes. It made me livid, after i specifically told them not to do it, that they went ahead and did it. Also having to explain to them how Visual Studio SSDT fucking worked made me realize it was a losing effort.
 

moontayle

Golden Squire
4,302
165
The quality of any code that I've seen from Indian shops is abhorrent.
I'm starting to understand this. ~2800 lines of code in just this one class and the IDE shows 318 warnings. Granted, a good portion is because Google moved away from Apache HTTP so all that's showing as deprecated.
 

Noodleface

A Mod Real Quick
37,961
14,508
Back when I was a system engineer I had to manage a business unit from India. The software engineers in their unit were the worst I had ever had to deal with, ever.
 

Khane

Got something right about marriage
19,884
13,399
It's difficult, on the one hand there's some amazing Indian engineers I've met. On the other-hand you want to avoid culturally stereotyping them, but you keep getting smacked in the face over and over again by such an epidemic of bad quality and short-cuts it's hard not to judge that there's just something culturally wrong about their approach to software.

And even then, it might just be proportion. There's 2-3 bad Indian devs for every bad american dev just as a matter of population.
It's definitely a cultural problem. The caste system is alive and well in India, it affects how their development shops run greatly. Lower caste members, even if they are heads and tails above higher caste members at actual software development, never question anything the higher caste member says or does. And those higher caste members are not used to having to answer to anyone or being told how to do anything, so the way they deal with Americans is to say "Yes" to everything we ask them but do it their own way anyway.

And I'm sure everyone here has experienced the "It is being worked on" phenomenon. Any time you try to get a status report from them all they say is "It's being worked on". They will never tell where they are with it, even if you ask a simple yes or no question "Is that feature ready to be delivered" you'll get that same vague response.

Caste system bros.
 

Tuco

I got Tuco'd!
<Gold Donor>
45,487
73,576
When I work with people in India I get the feeling they grow up building makeshift shacks, riding their dirt bikes through traffic without regard to safety or rules, shitting on the sidewalk, having a different dialect for every town etc. Then they go through some technical school, are put into a white-collar setting with computers and are asked to jump from a pre-industrial state to a cutting edge one and can't handle the cultural shift.
 

Khane

Got something right about marriage
19,884
13,399
When I work with people in India I get the feeling they grow up building makeshift shacks, riding their dirt bikes through traffic without regard to safety or rules, shitting on the sidewalk, having a different dialect for every town etc. Then they go through some technical school, are put into a white-collar setting with computers and are asked to jump from a pre-industrial state to a cutting edge one and can't handle the cultural shift.
Nah dude, the people who shit on the sidewalks don't get tech jobs. Seriously, caste system.
 

Noodleface

A Mod Real Quick
37,961
14,508
You guys ever work with Indians in your own office? I always wondered why they refuse to wear fuckin shoes
 

moontayle

Golden Squire
4,302
165
When I work with people in India I get the feeling they grow up building makeshift shacks, riding their dirt bikes through traffic without regard to safety or rules, shitting on the sidewalk, having a different dialect for every town etc. Then they go through some technical school, are put into a white-collar setting with computers and are asked to jump from a pre-industrial state to a cutting edge one and can't handle the cultural shift.
Like Khane said, it's just instilled into their culture. Used to be a show on NBC called Outsourced. Very first show they trotted out a plotline of someone who was of a low caste being hired specifically so she could be fired. I have zero doubts about something like that actually happening. We should ship SJWs over to India to show them what real institutionalized oppression looks like. At least in America you can dig yourself out of a hole if you work at it enough. It's impossible in India, you always have someone above you filling the hole back in.