forked from mikeckennedy/talk-python-transcripts
-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy path039-Finding-your-first-Python-job-part-1.vtt
1547 lines (1031 loc) · 59.5 KB
/
039-Finding-your-first-Python-job-part-1.vtt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
WEBVTT
00:00:00.001 --> 00:00:03.660
How often do you meet people who are looking to get into the software development space?
00:00:03.660 --> 00:00:08.640
Do they ask you for advice? Maybe they want to know your story of how you got started and
00:00:08.640 --> 00:00:12.580
landed that first big job. Maybe they want to know what they should be doing right now.
00:00:12.580 --> 00:00:17.880
This episode of Talk Python to Me is the first in a two-part series that attempts to bring a
00:00:17.880 --> 00:00:22.900
wide spectrum of thoughts on this discussion. It's Getting Your First Dev Job as a Python
00:00:22.900 --> 00:00:28.840
Developer Part 1. It's episode number 39, recorded December 10th, 2015.
00:00:28.840 --> 00:00:58.700
Welcome to Talk Python to Me, a weekly podcast on Python, the language, the libraries, the
00:00:58.700 --> 00:01:03.320
ecosystem, and the personalities. This is your host, Michael Kennedy. Follow me on Twitter
00:01:03.320 --> 00:01:08.240
where I'm @mkennedy. Keep up with the show and listen to past episodes at talkpython.fm
00:01:08.240 --> 00:01:14.120
and follow the show on Twitter via at Talk Python. This episode is brought to you by Hired and
00:01:14.120 --> 00:01:19.520
Codeship. Thank them for supporting the show on Twitter via at Hired underscore HQ and at
00:01:19.520 --> 00:01:26.560
Codeship. Hello and welcome to a special Talk Python to Me. In this Talk Python, we're not going to
00:01:26.560 --> 00:01:31.460
interview one person that's maybe done something great in the industry. This is in fact going to be
00:01:31.460 --> 00:01:38.660
a two-part series made up of panelists. And the idea is we're going to talk about how do you get
00:01:38.660 --> 00:01:45.020
started in the software industry in general and in Python as a Python developer in particular.
00:01:45.020 --> 00:01:51.240
So the overall goal of the series is going to be to help newcomers, whether they're entirely new to
00:01:51.240 --> 00:01:58.640
the development world or maybe transitioning from a related industry like going from networking into
00:01:58.640 --> 00:02:05.060
programming. Help those newcomers get their first job. We're going to interview some people who have
00:02:05.060 --> 00:02:10.780
just landed their first job and we're going to interview some people who have key roles hiring and
00:02:10.780 --> 00:02:16.460
selecting candidates at their companies. So this is going to be a two-part series. Part one, we're going to
00:02:16.460 --> 00:02:21.940
talk to the newcomers. Everyone you hear on the show today has just got a new job and we're going
00:02:21.940 --> 00:02:26.940
to talk about their experience getting there. And then the following show, we're going to talk to the
00:02:26.940 --> 00:02:34.660
experts. Now, I think one of the challenges out in the software industry is there's a large disconnect
00:02:34.660 --> 00:02:42.340
between people who have experience and people who are just getting started. If you have experience and
00:02:42.340 --> 00:02:48.800
you've done good work previously in the software industry, getting a job is pretty easy, to be honest.
00:02:48.800 --> 00:02:55.160
Just from my experience, I receive job offers unsolicited, by the way, job offers all the time.
00:02:55.160 --> 00:03:02.460
I just have one in my inbox right now. Hey, here's a great job. $115,000 plus bonuses, cool technology,
00:03:02.460 --> 00:03:07.620
lifestyle balance. You don't have to work all the time. You know, it sounds great, but I'm not interested.
00:03:07.760 --> 00:03:11.960
I actually already have a job. I like it. So in some sense, there's this feeling that there are many,
00:03:11.960 --> 00:03:16.780
many tech jobs out there. There are not enough programmers to actually fill the jobs. And there's,
00:03:16.780 --> 00:03:23.320
there's just tons of competition for good developers. But on the other side of that story is I think it's
00:03:23.320 --> 00:03:28.240
fairly hard for people getting into the industry to get started. How do they differentiate themselves?
00:03:28.240 --> 00:03:34.540
How do they prove that they're a good bet? Things like that. I feel kind of once you get started in the
00:03:34.540 --> 00:03:38.840
software industry, it's, and as long as you put in the effort, you keep learning, you keep growing,
00:03:38.840 --> 00:03:45.580
it's super easy to have a good job and just run with it. But getting that first step, that first
00:03:45.580 --> 00:03:53.140
foothold can be a super big challenge. So I'm hoping to put together this series to help more people
00:03:53.140 --> 00:03:58.540
climb that first step and get off the ground and running maybe quicker, maybe easier than they would
00:03:58.540 --> 00:04:04.480
have otherwise. So let me introduce the panelists real quick. This week, we're going to have Jess
00:04:04.480 --> 00:04:13.520
Unrein, Justin Beal, Eric Chow, Jonathan Sundquist, Elio Carrera, and Matt Yancey. Next week, we'll hear
00:04:13.520 --> 00:04:19.720
from experts at companies such as Netflix and PayPal, among others. Now, before we get to this panelist
00:04:19.720 --> 00:04:26.400
discussion, I want to recommend a few books. Now, I'm sure you're all aware of many ways to learn what
00:04:26.400 --> 00:04:31.080
you need to get a programming job, right? We could take online classes, you could go to a university
00:04:31.080 --> 00:04:38.580
program, you could buy a book on Flask, you buy a book on SQLAlchemy. But what I think people sometimes
00:04:38.580 --> 00:04:45.520
overlook are books that are a little more focused on taking a step back and looking at their career as a
00:04:45.520 --> 00:04:52.280
technical person. So I want to recommend two books that changed my thinking on this to some degree. The
00:04:52.280 --> 00:04:58.600
first one is a book called Soft Skills, the Software Developer's Life Manual. And this is a super good book by
00:04:58.600 --> 00:05:04.060
John Sonmez. I'll put the links in the show notes to both of these books that I recommend. And this book
00:05:04.060 --> 00:05:10.840
by John Sonmez really talks about how do you build up your career so that you distinguish yourself? How do
00:05:10.840 --> 00:05:16.440
you specialize in something? And how do you make that known? And he really covers what you need to sort of
00:05:16.440 --> 00:05:22.720
grow into being very successful software developers outside the technical parts, which are, I think,
00:05:22.980 --> 00:05:28.280
sometimes difficult, but more straightforward to learn. The second book I want to recommend is a book called
00:05:28.280 --> 00:05:33.780
The End of Jobs, Money, Meaning and Freedom Without the Nine to Five by a guy named Taylor Pearson.
00:05:33.780 --> 00:05:41.260
So this is one of my favorite books I've read this year. It's not exactly how do you get better at your
00:05:41.260 --> 00:05:47.680
job, but a little bit more at how do you look at employment and work for yourself in general. So
00:05:47.680 --> 00:05:53.160
to give you a sense, I'll give you a little quote from the book. There's a part where he talks about, you know,
00:05:53.160 --> 00:05:58.680
people are having a hard time finding a job doing the certain thing they want, or maybe at the right pay level
00:05:58.680 --> 00:06:02.200
or the right flexibility or something like that, and says something to the effect of
00:06:02.200 --> 00:06:09.920
the problem both for us as a society and as individuals is that we're asking the wrong question. How do I get that job?
00:06:10.340 --> 00:06:13.720
What if a better question is, how do I create a job doing that?
00:06:13.720 --> 00:06:19.680
Taylor goes through sort of analyzing the tech space and talks about entrepreneurship.
00:06:19.680 --> 00:06:26.340
I think you'll get a fresh perspective on careers and employment and jobs and all those sorts of things.
00:06:26.340 --> 00:06:31.400
I'm not sure it's super helpful when you're first getting started, but it's definitely an interesting big picture book
00:06:31.400 --> 00:06:33.360
that I think fits into this conversation.
00:06:34.080 --> 00:06:40.960
So with that introduction, let's get on to our first question with our panelists of newly hired developers.
00:06:40.960 --> 00:06:47.640
In this first segment, I wanted to lay the groundwork to build all the rest of the conversation on.
00:06:47.640 --> 00:06:52.900
So I ask everybody who's participating, what job did they just land?
00:06:52.900 --> 00:07:00.680
Pretty much everyone you're going to talk to has a new job. Many of them, it's their first or one of their first programming job.
00:07:01.160 --> 00:07:05.580
So I ask, what job did you land? What kind of experience were they looking for?
00:07:05.580 --> 00:07:09.460
And what type of people and software will you be working with?
00:07:09.460 --> 00:07:13.640
Hi, my name is Jess Unruin and I work as a software engineer with ShiftGig.
00:07:13.640 --> 00:07:17.480
I got my job as a junior software engineer a little bit more than a year ago.
00:07:17.480 --> 00:07:21.440
Right now I work primarily on API development and backend infrastructure.
00:07:21.440 --> 00:07:26.840
We're using a Flask app to serve out a backend that supports multiple web and mobile applications.
00:07:27.440 --> 00:07:32.060
So they were looking to specifically hire a junior and I didn't have any Python experience.
00:07:32.060 --> 00:07:40.180
Right before I started my job search, I attended a web application development bootcamp called Dev Bootcamp located in Chicago.
00:07:40.180 --> 00:07:43.540
Dev Bootcamp's curriculum is based on Ruby and Rails.
00:07:43.540 --> 00:07:46.060
So when I interviewed, I interviewed in Ruby.
00:07:46.440 --> 00:07:51.780
So even though I didn't have any Python specific experience, I still did have some web application background.
00:07:51.780 --> 00:07:59.040
And I walked in with a final project and a few side projects that I could use as code samples for my interview.
00:07:59.040 --> 00:08:06.160
When I first started my job, my first project was to write unit tests for modules in our code base that had little to no coverage.
00:08:06.400 --> 00:08:20.580
That was a really great way to get started at the company because it not only helped me get up to speed on Python as a language, but got me involved in the code base and figuring out how things worked a lot sooner than I would have just reading through the code alone.
00:08:20.580 --> 00:08:26.600
Here's Eric Chow, who's working on the Microsoft Azure cloud computing team.
00:08:26.960 --> 00:08:31.940
I was recently hired as a software engineer at Microsoft Azure Networking.
00:08:31.940 --> 00:08:41.980
They were mostly looking for a solid network engineer who passes the minimum software developer bar with a strong bias for diving deeper into the software developer world.
00:08:41.980 --> 00:08:50.220
On a daily basis, I do a combination of network engineering, you know, configure, troubleshoot switches, routers, networks.
00:08:50.400 --> 00:08:57.340
And I also deal with the code that manage the network devices, whether it's written by somebody else or written by myself.
00:08:57.340 --> 00:09:03.200
Now let's hear from Jonathan Sundquist, who just landed his first job at Server Density.
00:09:03.200 --> 00:09:08.460
So a year ago, I landed a job at a company called Server Density.
00:09:08.460 --> 00:09:14.800
At the time, they were looking for a support engineer, which was the role I was applying for.
00:09:14.800 --> 00:09:19.160
And Server Density is a company that does server monitoring.
00:09:19.600 --> 00:09:25.620
So they needed a quite tech savvy person who could be at the same level as the customers.
00:09:25.620 --> 00:09:34.760
But as I began working there, I actually transitioned to an inter-role as a back-end engineer who worked on marketing projects.
00:09:34.760 --> 00:09:43.540
And to me, it felt like a step up as I was doing more coding than the support engineer role would have required.
00:09:43.540 --> 00:09:46.120
Next up is Justin Beal.
00:09:46.120 --> 00:09:49.300
And Justin's situation is a little bit different than the other guys.
00:09:49.300 --> 00:09:56.220
Justin has been working as a software developer in the Java space, but he's decided to make the transition over to Python.
00:09:56.220 --> 00:09:58.220
So in some sense, he's brand new.
00:09:58.220 --> 00:10:00.040
And in some sense, he has a lot of experience.
00:10:00.040 --> 00:10:01.240
Let's hear what he has to say.
00:10:02.060 --> 00:10:03.480
Hello, my name is Justin Beal.
00:10:03.480 --> 00:10:08.440
I was a Java web developer for almost 10 years before being introduced to Python.
00:10:08.980 --> 00:10:14.700
In June, I acquired a software developer position at a company called Onshift in Cleveland.
00:10:14.700 --> 00:10:19.440
In Cleveland, Ohio, it's not real easy to find someone with a lot of Python experience.
00:10:19.900 --> 00:10:25.720
So they mainly were looking for a competent, experienced developer who is willing to learn.
00:10:25.720 --> 00:10:30.320
The ability to learn has got to be one of the most important things any candidate can showcase.
00:10:30.820 --> 00:10:37.660
When I was mentored as an intern, I had a boss who I thought was a complete jerk.
00:10:37.740 --> 00:10:43.560
But he gave me one of the best pieces of advice I've ever had in my career and have been running with it since.
00:10:43.560 --> 00:10:49.120
He said, Justin, it's a sink or swim world and you will always be sinking.
00:10:49.120 --> 00:10:52.840
There will never be a time when you know enough.
00:10:53.100 --> 00:10:58.720
If you're not constantly trying to learn, you will become outdated and you'll be stuck.
00:10:58.720 --> 00:11:02.440
So that, I think, is the most important thing when you go into an interview,
00:11:02.440 --> 00:11:04.420
regardless of whether or not you know the language,
00:11:04.420 --> 00:11:08.760
is to be able to demonstrate a time that you were overwhelmed.
00:11:08.760 --> 00:11:10.380
You were able to read a book.
00:11:10.380 --> 00:11:16.760
You did some Google searching about a technology, an open source project, something,
00:11:16.760 --> 00:11:21.960
and demonstrate that I may not have the skills you need right now,
00:11:22.100 --> 00:11:23.460
but I will learn them.
00:11:23.460 --> 00:11:26.120
And it will be quick and I will be efficient.
00:11:26.120 --> 00:11:29.660
In a matter of days, I will be up and contributing to your project.
00:11:29.660 --> 00:11:32.680
Next up is Ilo Correra.
00:11:32.680 --> 00:11:39.560
Ilo was a little concerned that his English was maybe not quite up to interview format in English,
00:11:39.560 --> 00:11:43.940
but I really wanted to include a story because I think it's an interesting one
00:11:43.940 --> 00:11:47.120
and it's somewhat different and it'll probably resonate with some of you out there.
00:11:47.120 --> 00:11:48.620
Ilo is from Portugal.
00:11:48.620 --> 00:11:49.660
And as you may know,
00:11:49.780 --> 00:11:53.020
Portugal has had some really tough times with their economy.
00:11:53.020 --> 00:11:58.440
Right now, I think the unemployment is 11.9% and that's much better than it has been.
00:11:58.440 --> 00:12:01.860
Over the last few years, it was somewhere close to 20%.
00:12:01.860 --> 00:12:07.020
When you're in that kind of market, finding a job takes on a different set of challenges.
00:12:07.520 --> 00:12:13.960
Add to that, Ilo lives out in the country in a small town and he's looking for a job as a software developer
00:12:13.960 --> 00:12:18.920
and doesn't really want to move to major cities where you probably can find jobs pretty easily,
00:12:18.920 --> 00:12:22.940
but then you're living in the middle of a city and that's not the lifestyle he wants.
00:12:23.480 --> 00:12:33.820
So his story is about how do you take this sort of tough situation as well as geographically located in places that maybe are a little harder to find Python jobs and make it work.
00:12:33.820 --> 00:12:34.960
Here's Ilo.
00:12:34.960 --> 00:12:36.700
Hello, Michael.
00:12:36.700 --> 00:12:37.260
Hello, Michael.
00:12:37.260 --> 00:12:39.800
Thanks for having me on the show.
00:12:39.800 --> 00:12:42.520
My name is Ilo Correa.
00:12:42.520 --> 00:12:43.940
I'm Portuguese.
00:12:45.080 --> 00:12:48.620
Iloved to code, build stuff, etc.
00:12:48.620 --> 00:13:02.400
Now, I'm currently working as a backend developer and a sysadmin for a company that do websites, web apps, digital marketing, etc.
00:13:02.400 --> 00:13:18.820
For this position, they are looking for someone with good understanding of Unix command line, Python, Django, good understanding on configuration, administration, the server.
00:13:18.820 --> 00:13:23.440
To get this job, it was a bit tricky.
00:13:23.440 --> 00:13:33.240
I live in South and in Portugal, IT jobs focus almost in the capital.
00:13:33.240 --> 00:13:37.720
With that, I had two options.
00:13:37.720 --> 00:13:42.160
Find a remote job or go to the capital.
00:13:42.160 --> 00:13:52.400
Because I like the good weather and I like to live in a peaceful place, I did want to go to the capital.
00:13:52.400 --> 00:14:01.180
And for a guy like me with almost no experience, a remote job, it is really hard.
00:14:01.180 --> 00:14:04.580
Our final guest is Matt Yancey.
00:14:04.580 --> 00:14:08.800
And Matt will bring us the data science side of the Python story.
00:14:08.800 --> 00:14:21.140
My name is Matt Yancey and I work as a data scientist at First Analytics, which is a consulting firm that specializes in using data and analytical techniques to provide services or solutions to other companies.
00:14:22.220 --> 00:14:29.160
Since joining, some of the work I've done has included predictive modeling, forecasting, text analytics, as well as data visualization.
00:14:29.160 --> 00:14:36.920
And we work in industries ranging from retail to railroad.
00:14:38.320 --> 00:14:46.260
From the perspective of the hiring process, I think First Analytics was looking for someone who had a good base knowledge of the standard analytical tools.
00:14:46.260 --> 00:14:55.140
So this includes basic statistics, linear regression, decision trees, things like that.
00:14:55.880 --> 00:15:04.240
But they also wanted someone who had kind of more niche or specific knowledge.
00:15:04.820 --> 00:15:21.560
So in my case, you know, I had some experience, you know, with text analytics and with web scraping, both of which I was able to really mainly do just through Python, using both the NLTK package and, you know, the beautiful suit package.
00:15:22.980 --> 00:15:28.880
The next thing I want to explore with our group is what did they do to prepare for this position?
00:15:28.880 --> 00:15:38.160
So everybody you're hearing from has recently landed a job that's at least some major transition, if not an entirely new career for them.
00:15:38.160 --> 00:15:39.920
And so what did they do?
00:15:40.440 --> 00:15:50.480
Did they go to the university, study for four years and get some very nice, well-rounded education, but four years of hard work before you can see whether that's going to work out?
00:15:50.480 --> 00:15:53.560
Or did they do some online video courses?
00:15:53.560 --> 00:15:54.900
Did they read books?
00:15:54.900 --> 00:15:56.880
Did they work on side projects?
00:15:56.880 --> 00:16:02.900
Where I work, we interview a lot of people, but we hire very few junior developers.
00:16:02.900 --> 00:16:06.640
Generally, everyone I work with is a software trainer.
00:16:06.820 --> 00:16:12.620
So we teach people who are already experienced software developers something new that they don't know.
00:16:12.620 --> 00:16:16.540
And so that doesn't really fit the mold of helping someone get their first job, right?
00:16:16.540 --> 00:16:17.860
You have to come with experience.
00:16:17.860 --> 00:16:20.700
In my world, we don't look at degrees.
00:16:20.700 --> 00:16:27.280
We don't really care so much about what you've studied and a lot of plaques and certifications.
00:16:27.280 --> 00:16:30.900
We just want to know what have you done and how can you present that?
00:16:31.180 --> 00:16:39.240
But I wanted to ask everybody here what they tried and what worked because they are in a very different position than the experience I have.
00:16:39.240 --> 00:16:40.740
Here's Jess again.
00:16:40.740 --> 00:16:43.280
How have you prepared for this position?
00:16:43.280 --> 00:16:47.360
To prepare for my job as a junior developer, I went through Dev Bootcamp.
00:16:47.780 --> 00:16:58.140
I'd done some self-guided learning before I got to that point, but I eventually found that I wasn't learning as quickly or effectively by myself as I would going through some sort of program.
00:16:58.140 --> 00:17:02.660
I started researching different boot camps around the country.
00:17:02.660 --> 00:17:08.880
I looked at Hackbright Academy, which is an all-women boot camp in San Francisco that does focus on Python.
00:17:08.880 --> 00:17:19.220
I also looked at App Academy and the different locations for Dev Bootcamp, but ultimately decided on going to the Chicago location of Dev Bootcamp after doing some research and price comparison.
00:17:19.220 --> 00:17:23.660
When I first started out, I wasn't looking specifically for a job in Python.
00:17:23.660 --> 00:17:28.020
I didn't know enough about the tech market to be looking at any languages in particular.
00:17:28.020 --> 00:17:38.080
I really wanted to focus my education on the fundamentals of web development and what it means to be a programmer since I was coming from a complete career change.
00:17:38.080 --> 00:17:53.460
I wasn't at all interested in going back for a two- or four-year degree because I already have my bachelor's in political science and music, and I wasn't interested in investing another two to four years of education where I was taking myself off of the job market and accumulating more debt.
00:17:53.460 --> 00:18:02.980
So boot camps looked like a really attractive option because they promised to get you through quickly and get you up to speed on being able to be a junior.
00:18:02.980 --> 00:18:06.340
Here's Eric Chow.
00:18:06.720 --> 00:18:08.880
How have you prepared for this position?
00:18:08.880 --> 00:18:14.100
I don't think I set out to be a software developer, per se.
00:18:14.100 --> 00:18:22.540
I discovered Python several years ago while trying to solve my own problem, which is something that was interesting.
00:18:22.540 --> 00:18:28.640
And again, it was solving the day-to-day problems I was facing at work.
00:18:28.780 --> 00:18:29.780
And I got really into it.
00:18:29.780 --> 00:18:34.400
And I started taking several university extension classes.
00:18:34.400 --> 00:18:39.520
I started a Python for Network Engineer blog, a Facebook page.
00:18:39.720 --> 00:18:50.420
And in general, when I finished writing some of the scripts and code, I cleaned them up and put them and published them on my blog to help others.
00:18:50.660 --> 00:18:53.760
So I think that kind of prepared me well for the job.
00:18:53.760 --> 00:18:58.360
But again, I think I never set out to be a software developer.
00:18:58.360 --> 00:19:03.960
It was just something that I was using on a daily basis to solve the problem I have.
00:19:03.960 --> 00:19:06.120
And it was something that was interesting to me.
00:19:06.600 --> 00:19:09.580
Next up is Jonathan Sundquist.
00:19:09.580 --> 00:19:17.100
So my background isn't at all in engineering, and it's not even in programming.
00:19:17.100 --> 00:19:22.960
So it all started with me discovering Udacity.
00:19:22.960 --> 00:19:26.220
They had this course called CS101.
00:19:26.220 --> 00:19:31.100
Essentially was the foundation which I built everything upon.
00:19:31.640 --> 00:19:39.180
After I did that course, I continued to learn on my own, reading online articles and trying to take other online courses.
00:19:39.180 --> 00:19:44.560
So that was something that I continued to do for like one and a half years or something like that.
00:19:44.560 --> 00:19:46.960
And eventually I heard something.
00:19:46.960 --> 00:19:48.720
I heard about boot camps.
00:19:48.720 --> 00:19:55.820
And I heard that that was a good thing to really kickstart your career into getting into the industry.
00:19:56.220 --> 00:20:01.640
And eventually I found one, which was a boot camp called Hackership.
00:20:01.640 --> 00:20:11.480
So during three months, I was able to focus quite intensively on doing programming among peers who did the same thing.
00:20:11.480 --> 00:20:14.860
And like we collaborated and did things like that.
00:20:14.860 --> 00:20:19.820
And the peer support was incredibly helpful.
00:20:19.820 --> 00:20:32.080
And having coaches around you and having a structure really helped me into getting into the habit of programming and like solving the problems that was required for this kind of thing.
00:20:32.080 --> 00:20:42.480
And having this helped me to like build a project of my own that I could talk about to like a prospective employer later on.
00:20:42.480 --> 00:20:45.060
Here's Justin Beal.
00:20:46.020 --> 00:20:49.920
When you are a competent, experienced developer, you don't stay on the market very long.
00:20:49.920 --> 00:20:56.240
The most important thing is to be able to demonstrate that competency when you actually find a position that you like.
00:20:56.240 --> 00:21:00.780
When I'm getting ready to interview, I read about big O notation for a little bit.
00:21:00.780 --> 00:21:04.680
Everybody should know that looping inside of a loop is an N-squared algorithm.
00:21:04.680 --> 00:21:12.320
But you should also know how efficient sorts are and access from a map, things of that nature.
00:21:12.320 --> 00:21:14.100
What is the big O notation of those?
00:21:15.000 --> 00:21:17.960
In addition, I like to refresh up on my data structures and algorithms.
00:21:17.960 --> 00:21:29.360
Knowing the difference between a list and a map, an array, how trees work, things of that nature, go a long way to demonstrate your understanding of computer science in general.
00:21:29.360 --> 00:21:33.640
The fundamentals are basically the most important thing.
00:21:33.640 --> 00:21:35.180
No good OO principles.
00:21:35.180 --> 00:21:38.000
If you don't know what the term solid means, look it up.
00:21:39.040 --> 00:21:44.740
Finally, as an advice to future candidates, know how to solve FizzBuzz in less than five minutes, please.
00:21:44.740 --> 00:21:47.780
Also, how to reverse a string in your language of choice.
00:21:47.780 --> 00:21:52.140
If you can't do those things, you're not ready for any interview at any level.
00:21:52.140 --> 00:21:55.120
Next up is Elio.
00:21:55.380 --> 00:22:04.740
I was really in PHP level and my focus was to get a job with that technologies.
00:22:04.740 --> 00:22:17.160
But here where I live, PHP companies work almost only with WordPress, Chumas and Drupal.
00:22:17.720 --> 00:22:22.140
It was a technology that I didn't like to work.
00:22:22.140 --> 00:22:29.320
Seeing that, I started looking for other companies without the technology in my area.
00:22:29.320 --> 00:22:33.640
For example, with C#, Python, Ruby.
00:22:34.180 --> 00:22:35.740
So I started looking.
00:22:35.740 --> 00:22:41.340
Then I found the one that I was working with Python and Django.
00:22:41.340 --> 00:22:44.640
And I tried to...
00:22:44.640 --> 00:22:47.920
And I was sending an email for...
00:22:47.920 --> 00:22:50.840
To get an interview.
00:22:50.840 --> 00:22:56.300
When I go to the interview, I didn't have much experience with Python.
00:22:57.100 --> 00:23:05.380
But I tried to prove my value showing the work I do, I did in other languages.
00:23:05.380 --> 00:23:14.020
And showing the good structure, good habits, so they can have me on the team.
00:23:14.020 --> 00:23:26.220
They say to me that I have to study a little and make something so they can see in Python.
00:23:26.880 --> 00:23:33.760
So I buy two books of Django and starting doing a simple project.
00:23:33.760 --> 00:23:35.980
After a few...
00:23:35.980 --> 00:23:43.040
After two weeks, contact them again and show my website.
00:23:43.040 --> 00:23:44.580
And they like it.
00:23:44.580 --> 00:23:51.240
They gave me a project and I start working for them as a freelancer.
00:23:52.020 --> 00:23:53.400
I start making projects.
00:23:53.400 --> 00:23:53.820
I start making projects.
00:23:53.820 --> 00:23:53.820
I start making projects.
00:23:53.820 --> 00:23:55.720
Simple websites.
00:23:55.720 --> 00:24:00.500
Then going for more like legacy code.
00:24:00.500 --> 00:24:03.120
And start improving.
00:24:03.120 --> 00:24:13.280
After a few months, the boss talked to me saying that he will need a CZ admin, DevOps, to help the current one.
00:24:13.280 --> 00:24:20.120
And if I'm history interested, he'll like me to have me on the team for good.
00:24:20.120 --> 00:24:23.560
So that's how I get my job.
00:24:23.560 --> 00:24:26.080
It's not easy.
00:24:27.660 --> 00:24:29.520
Now let's hear from Matt Yancey.
00:24:29.520 --> 00:24:38.240
When it comes to what helped prepare me for my current position, I've been very fortunate to have some really good formal education.
00:24:38.760 --> 00:24:43.860
So I recently graduated from Northwestern's Masters of Science and Analytics program.
00:24:43.860 --> 00:24:51.120
And in that program, we had courses that covered Python, Java, as well as modeling and data mining.
00:24:52.700 --> 00:24:57.940
But then we also had a practicum where we were placed in groups of four.
00:24:57.940 --> 00:25:00.580
So it was me and three other students.
00:25:00.580 --> 00:25:05.380
And then we were then assigned to work with a company that had a specific analytical problem.
00:25:05.380 --> 00:25:08.500
And they would give us the corresponding data.
00:25:08.500 --> 00:25:14.260
And then we'd apply the different techniques that we've been learning to that data set.
00:25:14.960 --> 00:25:16.860
And try to come up with a good solution.
00:25:16.860 --> 00:25:20.140
Now I know grad school doesn't work for everyone.
00:25:20.140 --> 00:25:29.280
But fortunately, there's a lot of really good alternative resources out there for getting some of those same aspects of an analytics program.
00:25:29.280 --> 00:25:38.820
When it comes to learning a programming language like Python or Java, I think anyone who's listening to this podcast knows there's a million resources out there on the web for doing that.
00:25:39.500 --> 00:25:45.580
But there's also a lot of really good resources like MOOCs and online tutorials for data science courses.
00:25:45.580 --> 00:25:47.240
They cover a lot of different topics.
00:25:47.240 --> 00:25:51.800
Kind of the more difficult thing is getting industry experience.
00:25:51.800 --> 00:25:57.380
But fortunately, we have Kaggle, which is a great resource for doing that.
00:25:57.380 --> 00:26:08.720
For those who are unfamiliar with what Kaggle is, it's simply a site where companies can post their problems along with their data that they want other people to solve.
00:26:08.720 --> 00:26:12.640
And these problems are posted actually in the form of a competition.
00:26:12.640 --> 00:26:19.060
So you can also see how you rank against other people in the data science community.
00:26:19.060 --> 00:26:22.200
And the people that can also post some of their solutions.
00:26:22.200 --> 00:26:27.060
So it's a great place for learning how to do some data science as well.
00:26:27.060 --> 00:26:33.680
But this provides a great opportunity for people to get to play with real-world company data.
00:26:33.680 --> 00:26:47.440
This episode is brought to you by Hired.
00:26:47.440 --> 00:26:53.920
Hired is a two-sided, curated marketplace that connects the world's knowledge workers to the best opportunities.
00:26:53.920 --> 00:26:58.260
Each offer you receive has salary and equity presented right up front,
00:26:58.260 --> 00:27:03.080
and you can view the offers to accept or reject them before you even talk to the company.
00:27:03.080 --> 00:27:08.700
Typically, candidates receive five or more offers in just the first week, and there are no obligations.
00:27:08.700 --> 00:27:09.440
Ever.
00:27:09.440 --> 00:27:11.540
Sounds pretty awesome, doesn't it?
00:27:11.540 --> 00:27:13.580
Well, did I mention there's a signing bonus?
00:27:13.580 --> 00:27:17.680
Everyone who accepts a job from Hired gets a $2,000 signing bonus.
00:27:17.680 --> 00:27:22.020
And as Talk Python listeners, it gets way sweeter.
00:27:22.640 --> 00:27:29.580
Use the link Hired.com slash Talk Python To Me, and Hired will double the signing bonus to $4,000.
00:27:29.580 --> 00:27:31.300
Opportunity's knocking.
00:27:31.300 --> 00:27:34.920
Visit Hired.com slash Talk Python To Me and answer the call.
00:27:44.660 --> 00:27:48.300
So you've heard the different approaches that our new hires have taken.
00:27:48.300 --> 00:27:50.100
Some of them did boot camps.
00:27:50.100 --> 00:27:51.540
Some of them did online courses.
00:27:51.540 --> 00:27:54.200
Some of them just built it up slowly over time.
00:27:54.200 --> 00:27:57.860
And we haven't had a master's degree in the mix there.
00:27:57.860 --> 00:28:07.780
So I asked them, what do you think of your particular path to getting ready to get this job and get started in this industry was the most important?
00:28:08.740 --> 00:28:12.460
What part of your experience from question two made the biggest difference?
00:28:12.460 --> 00:28:24.280
So at the end of Dev Boot Camp, you spend a pretty intense eight days at the end of the program working with a small group to create a full MVP web application that you present to potential employers.
00:28:24.280 --> 00:28:30.800
Working quickly to create that MVP that you have to coherently present was an incredibly valuable experience.
00:28:31.020 --> 00:28:38.280
One of the most important things that I learned over the course of our final project was how to talk about the decisions you make as a programmer.
00:28:38.280 --> 00:28:41.620
Why does your infrastructure look the way it does?
00:28:41.620 --> 00:28:44.420
Why did you choose to use the packages that you did?
00:28:44.420 --> 00:28:48.000
Why don't you have coverage for this particular module?
00:28:48.780 --> 00:29:05.260
That was a really helpful experience because when I was interviewing, my team was looking much more for critical thinking skills, communication skills, and being able to defend your positions than they were for specific Python knowledge.
00:29:05.260 --> 00:29:17.120
So I think that boot camps do a good job of getting you to the point where you can critically analyze what you're writing and learn quickly and adapt quickly to new situations.
00:29:17.660 --> 00:29:28.460
Another thing that the instructors encouraged us to do while we were at Dev Boot Camp was to consider things we might have done differently if we had the chance to start our project over or if we had more time to refactor.
00:29:28.460 --> 00:29:39.260
Being able to think about editing and critical analysis was a really great skill that I think they did a good job of instilling in my nine weeks at Dev Boot Camp.
00:29:39.260 --> 00:29:44.100
What part of your experience made the biggest difference?
00:29:44.380 --> 00:29:53.980
I think the blog really showed my dedication toward learning how to code and shows kind of this practical side of what I can do.
00:29:53.980 --> 00:30:01.340
I mean, it takes time and effort to write the code, clean it up, add comment, and format it correctly for the web.
00:30:01.780 --> 00:30:04.380
Also, you know, I know this wasn't going to make me any money.
00:30:04.380 --> 00:30:14.040
And I just wanted to do this for, you know, one, to track my own effort, and two, to possibly help others in the same situation.
00:30:14.040 --> 00:30:21.880
So I think that really helped me in a way to differentiate myself from other candidates.
00:30:23.600 --> 00:30:34.420
So what made the biggest difference was really being able to have this kind of immersive experience as I had in hackership.
00:30:35.260 --> 00:30:43.520
And it gave me the kind of confidence boost that made me feel that programming was something that I could actually do.
00:30:43.520 --> 00:30:56.000
As I said earlier, at the end of the three months, I had something that I could actually talk about with an employer and show him that this is what I've learned during these three months.
00:30:56.400 --> 00:30:58.660
And this is what I actually can do.
00:30:58.660 --> 00:31:07.280
I think the thing that makes the biggest difference in an interview is demonstrating that this is a lifestyle choice for you.
00:31:07.280 --> 00:31:08.960
It's not just a nine-to-five job.
00:31:08.960 --> 00:31:12.400
When I go home, I read about programming.
00:31:12.400 --> 00:31:14.320
When I work, I program.
00:31:14.320 --> 00:31:15.820
When I dream, I program.
00:31:15.820 --> 00:31:21.700
It's one of those things where this is my niche, and I want to be an expert in it.
00:31:21.700 --> 00:31:24.680
Prove to people that that is true for you also.
00:31:25.380 --> 00:31:28.020
If you feel like you're weak on something, read about it.
00:31:28.020 --> 00:31:36.320
Most recently, I was told that I don't know what I'm doing as far as being a manager, so I've been listening to audio books at work.
00:31:36.320 --> 00:31:38.760
Most recently, Leading Snowflakes.
00:31:38.760 --> 00:31:45.380
But I've also listened to The Leadership Secrets of Attila Hunt, The Lean Startup, The Toyota Way.