TEC Talks Podcast: Unhappy Programmers
Ep. 10

TEC Talks Podcast: Unhappy Programmers

Phoenix, Arizona

Episode description

Join us today as we discuss and react to the most surprising headline from the StackOverflow 2024 Developer Survey - apparently, 80% of programmers are not happy?

To be more specific - only 20% of programmers explicitly stated they were actually happy, while the rest indicated complacency or unhappiness.

This is a special episode where we have three guests: TEC board members Andrew Karnes and Connor Johnson, community member Ryan Jones. Hosted by TEC CTO and board member Charles (Chuck) Knox.

Download transcript (.srt)
0:00

Today in the ACSL podcast studio,

0:02

we have a very special episode for you.

0:04

We will be discussing the Stack Overflow 2024

0:07

developer survey with a specific focus

0:09

on the frequently seen headline stating that,

0:11

apparently, 80% of developers are not happy.

0:15

In the studio, we have a few special guests right now.

0:30

There are four of us in here, including myself.

0:32

I'm going to go ahead and kick it over to each of them

0:34

to introduce themselves real quick.

0:35

First in the studio, we have Andrew over here.

0:38

Andrew, why don't you go ahead

0:39

and introduce yourself real quick?

0:40

Hello, I am Andrew.

0:41

I am one of the board members on tech

0:43

and I have worked a number of years as a software dev,

0:46

so I'm a mid-level backend software engineer.

0:50

Thank you, Andrew, appreciate it.

0:51

And then over here, right in front of me, we have Ryan.

0:54

Why don't you go ahead and introduce yourself?

0:56

Hello, everyone.

0:57

My name is Ryan Jones.

0:58

I work primarily as a embedded systems developer.

1:02

You can call me mid-level,

1:03

but had a lot of experience working

1:05

in a couple of different industries.

1:06

Awesome, thank you, Ryan.

1:07

And then to my left here, we have Connor.

1:10

Why don't you go ahead and introduce yourself, Connor?

1:12

And by the way, Connor has actually been

1:13

on the podcast before.

1:14

We have heard from him for dedicated listeners,

1:16

so he is making a comeback.

1:18

Yeah, thanks for having me back.

1:19

Yeah, so I'm Connor.

1:20

I'm a UX UI developer.

1:22

I'm a little bit more on the greener side of things,

1:24

a little earlier career, but I'm still excited to be here.

1:27

Excellent, thank you, Connor.

1:28

And then last but not least, we have myself here,

1:30

which I have also participated on this podcast

1:33

a few times before.

1:34

My name is Chuck.

1:35

I am the CTO of the Technology Education

1:38

Collaborative Nonprofit.

1:39

This is what brings us all here today.

1:41

I am also a senior level software engineer.

1:43

I do full stack.

1:44

I also do a lot of Linux type stuff,

1:46

and I pretty much just love coding.

1:47

So why don't we jump into it?

1:49

What we wanna talk about today is we wanna figure out

1:51

why people might possibly be unhappy, right?

1:54

So I have up here on my screen the satisfaction levels

1:57

for the 2024 Stack Overflow survey, right?

2:00

And if I add up the numbers here,

2:01

it says for this particular item, 6.3,

2:04

it says satisfied at current job.

2:06

Only one in five professional developers

2:08

are happy with their current job.

2:09

It's about 20.2%.

2:11

We asked whether they were satisfied

2:12

with their current role, we being Stack Overflow,

2:14

and 48% indicated they were complacent

2:16

while 19% were satisfied.

2:19

So I'm kind of seeing here, we have three little sliders.

2:21

It says not happy at work is about 32%.

2:23

Complacent at work is about 47.7%.

2:25

Happy at work is only 20%.

2:28

So if you do the math, you do indeed see that roughly 80%

2:31

are not answering happy at work.

2:33

I think, you know, just from like a high level

2:36

personal preference perspective,

2:37

I think being either happy or complacent at work

2:39

are good places to be.

2:41

Would you guys kind of agree with that?

2:42

I see some heads kind of agreeing with that.

2:44

Andrew, what do you think?

2:44

Complacent is easy to stay at

2:47

and it is an acceptable goal to have.

2:50

It's hard because now you're not advancing yourself,

2:53

but still better than not happy.

2:56

I think I would agree with that.

2:56

What about you, Ryan?

2:57

I'd be interested to see the experience level

3:00

of the people who answered these, right?

3:01

Because there's that sort of honeymoon phase

3:03

when you start a job where you are very happy

3:05

and then as over time you could pivot

3:07

to being more complacent in the job setting.

3:09

But I definitely agree that complacent

3:12

isn't necessarily a bad thing

3:13

and it can be satisfactory at work.

3:15

Yeah, good thoughts.

3:16

What about you, Connor?

3:17

Yeah, I totally agree with you.

3:18

I will say one of the things that kind of popped out at me

3:21

is that satisfaction and also happiness,

3:24

sometimes they don't always correlate like one-to-one.

3:27

So I do think some of the wording

3:28

could be tweaked a little bit in the survey.

3:30

That's a really good point, yeah.

3:31

Cause you might be satisfied at your job,

3:32

like maybe provides the intangibles

3:34

or rather even just tangibles.

3:36

Like it might have a good set of benefits

3:38

or a good healthcare plan

3:40

or something else that really works for you

3:41

and that leaves you satisfied,

3:43

but you may not entirely be happy, right?

3:44

That's kind of what you're getting at?

3:45

Yeah, exactly.

3:46

And to add to that point, yes, it might be a job.

3:50

You spend eight hours a day doing it or more

3:52

and sure you're complacent,

3:54

but that's what outside of work is for.

3:56

If work helps fund being extremely happy outside of work,

4:01

complacent sounds great.

4:02

Yeah, it seems like an admirable goal to shoot for, right?

4:04

It is also important to note

4:06

that this is a technology focused organization.

4:09

The TechEdCollab is focused on educating people

4:11

about the thoughtful use of technology.

4:13

We are all very passionate about it.

4:14

That's why we're here.

4:15

There are many people who strive to get into tech

4:18

and our goal is to help them get into tech.

4:20

So we want to really highlight for everyone listening

4:22

that we want to make a clear picture

4:25

of what to expect in the industry

4:26

because that is part of the education, right?

4:28

I think everyone here would agree with me on that,

4:30

that while every job does have its downsides

4:33

and people do end up unhappy in some circumstances,

4:35

our goal is to paint a realistic picture of things

4:38

and not to lead people astray.

4:39

So each of us has brought forth a talking point

4:41

that we're gonna go through

4:42

with the idea of understanding

4:44

why people might be unhappy on the job.

4:45

So I'll go ahead and start with my point here.

4:48

One of the things that I've had

4:49

over the years that I've been doing this

4:51

is concerns about code quality and confidence, right?

4:55

Any company that is seeking to deliver a tech product

4:58

wants to be confident in their product,

5:00

that it will work the way that's expected, right?

5:02

They want to have a reliable set of software

5:05

that they're shipping to their customers,

5:06

otherwise their customers won't come back.

5:07

That's kind of the whole point, right?

5:08

If you ship something that may or may not break

5:10

and no one really knows for sure how much it's gonna break,

5:13

that's kind of a shaky foundation to live on.

5:15

So one of the things that I think

5:16

kind of rears its ugly head from time to time,

5:19

more often than I would prefer,

5:20

is the idea that businesses are always trying to

5:24

sort of push and push and push

5:26

to the point where sometimes engineers

5:28

may not have enough time to consider

5:31

how reliable or unreliable their code is.

5:33

And if I'm gonna get a little more specific with that,

5:34

what I'm really trying to get at

5:35

is stuff like unit tests and integration tests and QA, right?

5:38

When I write software,

5:40

I want it to work the way that I intend it to work.

5:42

And sometimes I write code that just kind of sucks, right?

5:44

First time I run it, it doesn't work.

5:46

Eventually though, it does work.

5:47

And a lot of the times when you're doing development,

5:50

you do write unit tests to kind of assert

5:52

that your code works the way it's supposed to.

5:54

And running these unit tests is ideally done in a way

5:56

that's repeatable, quick, doesn't require any dependencies,

5:59

that kind of thing.

6:00

And unfortunately, I think that a lot of companies

6:02

just simply don't have the time to invest

6:03

in a solid, robust unit testing infrastructure setup.

6:06

And that's hard, I get it, I really do.

6:08

But I just want to really bring attention to the idea

6:11

that with a little bit of discipline

6:12

and a little bit of agreement in advance

6:14

on how much unit testing should be done,

6:16

better code quality can be achieved.

6:17

Simple bugs can be ironed out.

6:20

Usually the process that I take is I recommend

6:22

don't ever go above 80% code coverage in unit tests.

6:25

If you wanna be happy and not have to deal with crazy mocks

6:27

and things like that, monkey patching, whatever else,

6:29

I understand that even 80% may not be achievable

6:32

in all cases.

6:33

But I think that there are great benefits to be found

6:36

from just simply pushing for some level of unit testing.

6:38

I'll kind of kick it to you guys real quick

6:39

to share any thoughts on that regard.

6:42

Andrew, do you have any thoughts on that?

6:43

I do want to point out one thing.

6:45

Stack Overflow factors that can most contribute

6:48

to job satisfaction agree with you.

6:50

Improving quality of code is the highest rated thing

6:54

for something that would contribute more

6:57

to being satisfied and or happy at work

7:00

to pull from the 32% that are not happy

7:03

and move them higher up that chain.

7:05

The tight rope of balancing between there's deadlines,

7:09

you gotta pull in money with the software,

7:11

but the software has to do the thing.

7:13

And then there are people within the org

7:16

that will promise the moon in the world.

7:19

And now somebody has to make that with,

7:22

and these promises were done without an understanding

7:25

of what that actually means.

7:28

Excellent thoughts.

7:29

Ryan, what about you?

7:31

Unit testing and code quality is super important.

7:33

And when it comes with different types of developers,

7:35

you don't want to feel overwhelmed, right?

7:37

So if you're only working on unit testing, for example,

7:40

and maybe your goals are aligned with something else,

7:43

that could influence your satisfaction of job quality.

7:46

Connor, what about you?

7:47

This does kind of remind me of something GitHub did

7:49

a while back to where they were seeing similar kind

7:52

of issues within their employment body.

7:55

So they went through and they put a pause

7:57

on all the new features they wanted to add to GitHub.

8:00

And they said, okay, what we're going to do is

8:02

for the next few months, we're just going to focus

8:04

on fixing all the other problems we have.

8:06

And that actually ended up working surprisingly well

8:09

just for employee satisfaction.

8:11

So, I mean, it does kind of prove what you're saying that,

8:14

hey, if maybe we spend a little bit more time

8:17

on the backend fixing all these bugs and stuff like that,

8:19

overall, it's just going to lead to a better environment.

8:22

It kind of sounds like the idea is that people

8:23

are getting a little anxious about their code, right?

8:25

They feel like maybe they just aren't in control anymore

8:28

and everything is kind of wishy-washy.

8:30

And giving them that time to improve the strength

8:33

of that code base makes people a little more happy.

8:35

Would you agree with that, Connor?

8:37

Yeah, I would totally agree with that.

8:38

I think a lot of it does come down to ownership

8:40

and feeling like you are putting a little bit

8:42

of yourself in your code base, so yeah.

8:44

Let's kick it over to the next talking point here.

8:47

Go ahead, Andrew, why don't you share with us

8:48

your perspective on why you think people might be unhappy

8:51

in the industry?

8:52

You never really feel like an expert.

8:54

Technology is so far reaching and in terms of breadth,

8:59

as well as so deep nowadays that the specializations,

9:05

such as for me, backend engineer,

9:08

now there's specializations of the specializations

9:11

because everything is so different and complex.

9:15

So any small changes, going back to the code quality,

9:19

you have to spend a lot more time on it.

9:22

And if you're not an expert,

9:23

that's a lot more time and likely less quality.

9:26

So that's one of the things for me.

9:29

And my experience was they wanted to swap devs every quarter.

9:33

So whatever team you were on,

9:35

you got a different team the next quarter.

9:37

I was very much not a fan of that practice.

9:39

Ryan, what do you think?

9:40

I think he brings up good points

9:42

about how technology is changing so fast

9:44

and how there's this constant evolution

9:47

to try to learn new things,

9:48

as well as keep up with your doing currently, right?

9:50

You don't wanna be doing a skill

9:52

that might become outdated in two years

9:54

and then suddenly you don't have a job, right?

9:55

So I feel like in terms of job satisfaction

9:57

with developers, having that feeling of growth

10:00

and being able to constantly learn new things

10:02

and apply it in your daily job

10:04

can influence your satisfaction and job quality.

10:07

I do think it comes back to having a good quality team.

10:10

I do think every quarter, getting a new team,

10:12

that's gotta be really stressful for a job like that.

10:15

Because when you're learning

10:17

all these different new technologies,

10:18

sometimes you fall back on your team to be like,

10:21

does anybody else know how to use this tool or whatnot?

10:24

So I could definitely see that being a serious issue.

10:27

Depending upon the quality of the code base

10:29

you're working with,

10:30

if it's one that's not great quality,

10:32

now you need more depth of knowledge.

10:34

If it is one with good quality,

10:36

that depth actually shallows out, which is nice.

10:39

Yeah, I think the idea that you're moving to a new team

10:41

every quarter is kind of insane to me.

10:43

I mean, it can take a month or two

10:44

just to figure out a code base.

10:46

I'm curious, do you remember how big the code base was

10:49

for each of these teams that you kind of went on?

10:50

Because if it's a big code base,

10:52

there's no way that's sustainable, right?

10:53

It was very big, larger than big,

10:57

because this was a code base that included authentication.

11:00

It included document processing.

11:02

It included the database.

11:04

It was a very monolith of a code base.

11:07

And there was an entire rewrite slash refactor

11:11

they were attempting to do

11:12

of this incredibly tightly knit code base to pull out.

11:17

So not having a depth of knowledge,

11:20

yeah, I was not happy with my code quality from that.

11:23

So why don't we kick it over to our next talking point.

11:24

I believe, Ryan, you're up next.

11:27

The topic I wanted to talk about

11:28

was having the tools and resources

11:31

to set yourself up for success,

11:33

whether that's through mentorship, training resources.

11:36

One thing I like to do is set a goal for myself.

11:38

In six months from now,

11:39

am I gonna be better or worse than I was off, right?

11:41

And I think that's like a good metric

11:42

I set myself up for in my career.

11:44

So one point I see on here

11:47

is contributing to open source being a satisfactor.

11:51

And in my day job, I actually do have the opportunity

11:53

to contribute to open source

11:55

because there's like a tool that we use that is highly used

11:59

and there's not a lot of people who know how to do it.

12:01

And I think that being able to contribute to open source

12:05

is, it feels very good

12:06

because not only are you doing stuff that benefits you,

12:09

but you're helping the community.

12:10

And I think that if you have the opportunity

12:13

to do something like that,

12:14

it can influence your satisfaction in a job.

12:16

Yeah, having the tools as well as goals and environment

12:20

to promote yourself, that's a great thing.

12:24

Having the goals set by other people, ooh, that hurts

12:28

because those goals are now business aligned,

12:32

not personally aligned.

12:34

So setting your own goal, like you've mentioned, great.

12:38

Yeah, I totally agree with you.

12:39

It's also nice because there are a lot of tools

12:42

and articles based on kind of what you're talking about.

12:45

So it is a lot easier for people to learn

12:47

like better management skills

12:49

and also to learn some of these different tools

12:51

because not only do you have

12:52

maybe the official documentation,

12:54

you might also have like some open source,

12:56

like projects that are trying to promote usage

12:58

of the different tools that your company might be using.

13:01

Yeah, I definitely agree with what Ryan is saying.

13:03

So I think it's really important for people

13:05

to be able to contribute to open source projects

13:08

either as part of their job or outside of their job

13:11

because that builds the community up, like you said.

13:13

And also it lets you kind of improve your exposure

13:16

to different sets of software and different tooling

13:18

and different technologies, different frameworks,

13:20

different whatever.

13:21

I also think that if you're working at a place

13:23

that genuinely respects you as a person

13:25

and wants you to grow, they will hear you out on your goals.

13:28

They will hear you out on how you want to grow.

13:30

And that's really important.

13:31

When I worked at a more big tech type firm,

13:34

all of the management that I appreciated working with there

13:37

thought and gave careful attention

13:39

to my own personal goals and career growth.

13:42

So if you're at a place that says,

13:43

we're only thinking about ourselves

13:45

in terms of the business,

13:46

definitely give that some second thought.

13:47

You know what I mean?

13:48

Connor, what is your talking point?

13:50

So something that I think should be brought up

13:52

is that with Stack Overflow,

13:54

I have noticed a lot of people who use it

13:56

tend to be a little bit more green

13:58

and trying to get like a foot in the door in the industry.

14:01

And also if you look at the Stack Overflow survey,

14:05

there's a question about your educational background

14:07

and there are a fair number of people

14:09

who have like college degrees.

14:11

And so I think a lot of the dissatisfaction

14:14

comes from thinking that you are prepared

14:17

when you really might not be 100%.

14:20

So I think that creates kind of a false sense of security.

14:23

Like, hey, I'm gonna go out there,

14:25

I'm gonna get a job in industry

14:26

and I'm gonna be able to do what I need to do.

14:29

But unfortunately, I think with the way the world

14:31

has kind of been these past couple of years,

14:33

the industry has just shifted a lot

14:35

with like the introduction of AI

14:37

and then also COVID didn't help very much.

14:39

So I think that definitely has kind of changed

14:41

how the industry works a little bit.

14:43

Yeah, I think I have a quick reaction to that.

14:45

I think that when you graduate from college,

14:47

you have a degree, like you said,

14:48

but then you're really just honestly expected to know

14:51

how to work with Angular or React

14:54

or whatever trendy framework is taking the industry

14:57

by the horns, so to say.

14:59

And you don't really learn those frameworks

15:01

when you're in college,

15:02

unless you go to something more specific

15:03

like a technical institute

15:04

or some kind of coding bootcamp.

15:05

And neither of those are long enough really

15:08

to build that experience,

15:09

at least coding bootcamps usually aren't.

15:10

Those are only a couple of months.

15:11

So I hear that definitely being the case.

15:14

And in fact, it's one of the reasons why

15:16

I think a lot of people come into a job

15:17

that are just completely unprepared.

15:18

Like they don't even know how to use something like Git

15:20

or maybe like certain IDE tools

15:23

that are just very common in the industry,

15:25

but you don't learn about them at all in college.

15:26

So there's definitely a bit of a mismatch, right?

15:28

Like you did all this work to get a degree,

15:29

you had all these crazy student loans

15:30

that you're now having to pay off

15:32

and then you get a real job

15:33

and it's actually quite different from what you thought.

15:34

And for myself, there's also a mismatched expectations

15:38

of, yay, you got a college degree.

15:40

I'm gonna be hired in a month, right?

15:41

And then five months later or six months later,

15:44

because depending upon job market, is it good?

15:47

Are they actually going to hire new people

15:49

or is it, no, we're only hiring

15:52

for like senior level positions

15:54

because we don't have the bandwidth

15:57

to take the time and train our new hires.

16:01

Yeah, and just to think about that too, Andrew, right?

16:02

Every year there's gonna be more and more CS grads

16:05

that are graduating with CS degrees, right?

16:06

So to some degree it's inflation.

16:08

There's more people with just college degrees

16:10

and it's almost becoming the bare minimum, the expectation.

16:13

You have to come up with different ways

16:14

to set yourself up and learn new skills

16:16

as well as be unique.

16:17

I think doing organizations like tech or extracurricular,

16:20

I got most of my skills in college, not through classes,

16:22

but being involved with community

16:24

and getting hands-on with projects.

16:26

And then also what I mentioned before, open source, right?

16:29

Anyone can contribute.

16:30

That's almost like a free internship, right?

16:32

You get skills contributing to open source

16:34

and suddenly you're doing the same thing at a real job.

16:36

So I think those would be really good resources

16:38

to consider when trying to pivot in the job market.

16:40

I'll echo that sentiment.

16:41

I actually had a ton of people

16:44

over the last n number of years really set me straight.

16:47

I would do stupid things when making poll requests

16:49

or I would make code changes that were unsensible,

16:51

but I didn't know at the time

16:52

and they didn't mince their words.

16:55

They told me, don't do this, don't do that.

16:57

And I learned, I learned fast.

16:59

And I think that that kind of stuff,

17:00

you can really only get in the open source community

17:01

because there's really nothing to lose

17:03

except for maybe a bit of pride, I guess,

17:05

by trying to make a code change somewhere, right?

17:07

Someone's gonna tell you, no, we're not gonna merge this

17:09

and maybe nothing happens.

17:10

Maybe something does happen,

17:11

but that's a great perspective to have, right?

17:14

All right, well, that is it for this episode.

17:16

This has been a very special episode.

17:18

We are thinking about doing more variants of these.

17:21

I personally really enjoy talking about this

17:23

and I wish we could go longer.

17:24

In fact, I think maybe in the future,

17:26

we will expand on different parts of the survey,

17:28

talk about different areas

17:30

of ways people are engaging in the industry.

17:32

If you are listening to this now

17:33

and you want to get involved somehow with tech,

17:36

send us a topic to discuss.

17:37

We are happy to hear you out.

17:39

I wanted to give a huge thanks to Andrew, Ryan, and Connor

17:43

for joining me in the studio today.

17:45

So thank you guys.

17:46

Thanks for having me.

17:47

Thank you, everyone.

17:48

Yes, thank you.

17:49

I'll see you next time.