I meant to say, generalizations don't always work well. They may have bad engineers. But they have great engineers too. Kent Dybvig and his team who wrote Chez Scheme works for Cisco. There are many others. Jonathan Rosenberg who wrote many Internet RFCs on fundamental protocols that run the Internet voice/video works for Cisco.
Let's not generalize. It hurts people!
You just have to look at the API. From little details (wifiInfo.getSSID() returning either the quoted SSID, an unquoted string of hex characters the SSID consists of, the special string "<unknown ssid>" or "0x") to the overall architecture (needlessly convoluted lifecycle, 2D rendering architecture from 2000s, the whole intra-app Intent bullshit that causes people to find alternative ways of communicating between Activities within the same app ...)
As alternatives, do people just end up dumping to an sqlite database and polling it in each Activity? Haha that'd be madness
When you buy practically any competitor and control the margins like Cisco was able to do for so many years that turned massive profits there isn't really much expected from the employees I'd wager.
Cisco is a huge place and this varies by person/team/BU. Fridays a lot of people work from home.
A lot of my coworkers work from home on Fridays too. Which means a three-day weekend / nothing to show for their time on Monday.
Do you really know what your teammates are accomplishing? Or how they are spending their workday? Do you go to their homes and peer inside the window? Or is it just some sense of self righteousness you feel by being a good employee who wouldn't ever choose to work from home like those other lazy bums.
Wow, I must have touched a nerve. Actually, I semi-regularly work from home. My issue is with the people in my organization who take advantage of working from home, treat it like a three-day weekend, and will likely cause the work-from-home privilege to be revoked.
And my experience with coworkers is no different. I actually checked commit histories at some point to confirm that indeed most of those who worked from home on Fridays didn't produce any significant output. The sneakier ones would commit stuff, but clearly 'little stuff' that I sometimes suspected they had ready on a Thursday specifically to show something on a Friday.
Of course, you're completely correct that this doesn't mean that this is always the case. But if I were an employer, based on my experiences, I'd be hesitant to allow people to work from home on Fridays. Not in general, but specifically only on Fridays.
Technology in general comes down in pricing. I'm constantly amazed at the vendors that introduce newer, more powerful product lines, with a reduced price tag from anything previously seen.
Cisco here, are a huge outlier. Despite HPE and Juniper creeping much more competitive options into their enterprise space, twice or so times a year we get alerts from Cisco about "across the board" price increases.
Mixed feelings.
Also, if you asked Informix for the time, it gave you the system time but somehow the Cisco DB tables always logged call times with daylight saving, so you got time mismatches by an hour. Call Manager must not have used the same "ask Informix what the time is" function that I used...
Fond memories, sort of. Trying to debug on an Informix instance the other side of the world with giant nested SPs failing with unhelpful error messages, what fun!
A lot of resentment between developers[0] and managers comes from not understanding that. Management does not care about your engineering concerns as long as they don't meaningfully impact sales[1]. Hell, even if they do, they can often paper over technical problems with marketing cheaper than it would take you to fix it. If they got a confidential memo that the whole country is going to have a sudden diarrhea epidemic, they'd happily sell the product, fire your team and buy a toilet paper factory instead.
--
[0] - those who haven't already been brainwashed into thinking in business terms first, i.e. into professionals.
[1] - sometimes it doesn't matter even if it impact sales, as long as it does so on a longer term than manager's expected involvement with this particular project.
It would be impossible to come across as 'absolutely terrible software engineers' just from a conversation without prexisting prejudice.
Its not just Cisco but for a large majority of folks a job is a part of their life not their entire life and it doesn't automatically follow that they are not good or passionate about their jobs, and it's sad that anyone would choose to reach this conclusion just from speaking to folks.
What a factory was.
What a unique_ptr did.
The dangers of unclear object ownership in a manually memory managed program.
Difference between when to pass by reference and when to pass by pointer.
I have also found that people get a lot less work done if they're working from home.
And other people's ideas of working from home vary. My friend's wife thought that her husband could do all the jobs around the house on his "day off".
Conjecture: you have never worked for a medium or large software company.
Which isn't to say it is a bad strategy. Seems to have worked for a while now.
It would be interesting to see the lifespans of people that went to work for Cisco vs those there by an acquisition.