Slide 1

Slide 1 text

// Flatiron School @markwunsch

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

Agenda 1) What was your path to engineering (and RTR)? 2) What does the team look like at RTR? How is it structured? 3) What makes a successful junior, senior, and directing developer at RTR? 4) What keeps you excited and passionate about engineering? 5) What advice would you have given yourself when you were starting out as an engineer?

Slide 4

Slide 4 text

What was your path to engineering?

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

W aReZ

Slide 9

Slide 9 text

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

DHTML

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

No content

Slide 15

Slide 15 text

No content

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

How is RTR structured?

Slide 19

Slide 19 text

Conway’s Law “Organizations which design systems…are constrained to produce designs which are copies of the communication structures of these organizations.”

Slide 20

Slide 20 text

Strategic Pillars

Slide 21

Slide 21 text

Pricing Unlimited Retail CX … Technology

Slide 22

Slide 22 text

What makes a successful developer at RTR?

Slide 23

Slide 23 text

DEX Technical Skill STR Getting Shit Done WIS Impact CHA Communication & Leadership

Slide 24

Slide 24 text

No content

Slide 25

Slide 25 text

DEX STR WIS CHA Ensures their organization has appropriately high technical competence and strives for excellence Researches new technologies to stay abreast of industry trends and standards. Capable of jumping in to help debug and triage critical systems as needed. Contributes to architecture by asking the right questions to ensure architecture matches business needs for the area Develops and deploys new strategies for building a high velocity, high performance development organization in line with our emerging customer needs. Supports technical innovation and leads the creation, continual refinement, and active enforcement of our development standards in order to ensure that our technology can be leveraged as a sustainable competitive advantage. Participates in staff recruitment, performance assessments, training, and career development. Responsible for all headcount planning and personnel evolution for multiple areas of the engineering organization. As necessary, the director manages vendor and external relationships for their organization, and participates in the budgeting process Provides leadership to software development managers, addresses technical, resource and personnel issues. Provides mentoring to senior staff. Builds and supports high functioning, motivated teams. Creates an organization that understands how to balance technical debt vs business goals. Collaborates across functional areas to define, prioritize and ensure implementation of specific innovations to improve technical functionality in support of business needs, efficiencies and revenue. Able to communicate technical concepts to business stakeholders as well as communicate business objectives to the technical team. Leverages past experience and uses strong communication skills to collaborate effectively with all stakeholders including customers, senior management and other business leaders. Sells Rent the Runway as a company and their organization as a team to potential candidates. Inspires potential recruits to join the company. Owns the OKR setting and review process for teams under their oversight

Slide 26

Slide 26 text

What keeps you excited and passionate about engineering?

Slide 27

Slide 27 text

Engineering is not my passion.

Slide 28

Slide 28 text

http://usersknow.blogspot.com/2015/02/your-job-is-not-to-write-code.html Your job is not to write code.

Slide 29

Slide 29 text

http://usersknow.blogspot.com/2015/02/your-job-is-not-to-write-code.html Your job is to improve our product for our users.

Slide 30

Slide 30 text

I’m passionate about building products.

Slide 31

Slide 31 text

I’m enthusiastic about building products.

Slide 32

Slide 32 text

What keeps you excited and enthusiastic about building products?

Slide 33

Slide 33 text

The Dreyfus model of skill acquisition • Novice • Advanced beginner • Competent • Proficient • Expert

Slide 34

Slide 34 text

1. Unconscious incompetence 2. Conscious incompetence 3. Conscious competence 4. Unconscious competence

Slide 35

Slide 35 text

守破離

Slide 36

Slide 36 text

No content

Slide 37

Slide 37 text

What advice would you have given yourself when you were starting out as an engineer?

Slide 38

Slide 38 text

No content

Slide 39

Slide 39 text

• Rule of Modularity: Write simple parts connected by clean interfaces. • Rule of Clarity: Clarity is better than cleverness. • Rule of Composition: Design programs to be connected to other programs. • Rule of Separation: Separate policy from mechanism; separate interfaces from engines. • Rule of Simplicity: Design for simplicity; add complexity only where you must. • Rule of Parsimony: Write a big program only when it is clear by demonstration that nothing else will do. • Rule of Transparency: Design for visibility to make inspection and debugging easier. • Rule of Robustness: Robustness is the child of transparency and simplicity. • Rule of Representation: Fold knowledge into data so program logic can be stupid and robust. • Rule of Least Surprise: In interface design, always do the least surprising thing. • Rule of Silence: When a program has nothing surprising to say, it should say nothing. • Rule of Repair: When you must fail, fail noisily and as soon as possible. • Rule of Economy: Programmer time is expensive; conserve it in preference to machine time. • Rule of Generation: Avoid hand-hacking; write programs to write programs when you can. • Rule of Optimization: Prototype before polishing. Get it working before you optimize it. • Rule of Diversity: Distrust all claims for “one true way”. • Rule of Extensibility: Design for the future, because it will be here sooner than you think.

Slide 40

Slide 40 text

No content

Slide 41

Slide 41 text

No content

Slide 42

Slide 42 text

No content

Slide 43

Slide 43 text

No content

Slide 44

Slide 44 text

• Don’t define yourself by the tools you use. • Adhere to a philosophy and know when to ignore it. • Get broad knowledge of the system. • Do the research. • Find the community. • Be nice.

Slide 45

Slide 45 text

Google these people • Rich Hickey • Kathy Sierra • Alan Kay • Bret Victor

Slide 46

Slide 46 text

^D