 So does anyone know what happens when you ask your friend if there's gonna be any architecture sessions at the next Drupalcon? Yeah, this guy right here says not until you make one get crackin so Here we are In case you walked into the wrong room. We get introductions out of the way This is the path to becoming an accidental architect. I am Patrick. Tell you I work for a company called pow tech Right now contract the US Forest Service Little story about the title of the session in October of 2014. I had my second interview at the Forest Service and During that interview they had all kinds of questions, which apparently I answered to their satisfaction They were all about enterprise Drupal architecture They even mentioned that they were already satisfied with my developer skills via the pre interview steps and my first interview and We're only interested in the ideas around enterprise Drupal architecture Now I call this accidental because the position I was in for NBC at that time was just sort of a senior Drupal developer role and Not Drupal architect and they weren't hiring for Drupal architect. This was a couple of interviews in before I heard any of this and So it wasn't even in the job description The whole poll was that I I could start working from home again for the same pay and I was pretty good with that so But my job since then has been pretty much entirely filled with architectural decisions. That's that's been my role I came on we had two other developers and they just started asking me. Okay. How are we gonna do this? And how are we gonna do that? You're the Drupal expert. So solve this for us so Probably a good time to tell you this entire session is gonna be recorded You don't really have to take notes the entire slide decks can be on the session page when we're done, too So don't worry about it. Just sit back and enjoy Also up until about 45 50 minutes ago. I was editing this so I don't have it all memorized So I'm gonna be looking at my screen quite a bit just to get that out of the way. I am Pretty comfortable with the material, but I changed it so much. So notice the strong Lego theme here, too We'll get into that in a minute So what are we here for today? I Can think of a couple reasons why any of you in the audience might be here Maybe you are looking to figure out how to go from where you are now like Drupal developer or possibly lead or project manager To Drupal architect you want to know how to do that Maybe you're trying to figure out if you already are an architect or maybe you're like Larry and you're here to heckle me I don't know. Most of you are probably in that first group Making the purpose of the session how to help to build a better you so you can help your customers better So that's marvelous. That sounds great How am I gonna do this a little bit of magic to make you better when you leave than when you came in? Well, we're gonna do it by following a path from one of my favorite books the success principles by Jack Kenfield In that book. It's all about getting from where you are to where you want to be I've applied that to Numerous things in my life, and it's worked really really effectively for me. So I figured I'd put it on this So let's break this down into a few steps One or two easy steps First we're gonna talk about the definitions of architecture Software architecture and Drupal architecture what they are how they're similar how they're different This is gonna cover the where you want to be part Next we're gonna talk about where you are On this path, which of course is the where you are part and then next we're gonna be talking about the largest part of the talk Which is the how you get there in that part? I'm gonna be talking about traits that make up an architect or really anybody who wants to be better at building solutions and Then we're gonna cover some resources that have been either reading or watching or Happened into over the past for this session At the end, I'm gonna let you in on some of the things that experts have tweeted back at me And then I'll give you an opportunity to ask some questions If we have any time left after that, which we won't Because this is probably gonna run a little bit long. We'll get out early when I started doing this. I was Basically interested in how to apply software architecture paradigms to Drupal And to do that I started looking at the definitions for software architecture And I'll tell you they're vague There's there's no set definition that I could find that covered everything that I have been reading or viewing Wikipedia has a Okay definition and for this for the purpose of this talk, I think we're gonna use that one Their definition is That a software architect is a software expert who makes high-level design choices and dictates technical standards Including software coding standards tools and platforms The leading expert is called a chief architect. I think we can break that down into a couple of key points They're an expert Their software expert they make high-level choices. They dictate technical standards and we can infer from the rest They know how to communicate these things because they don't live in a box and not talk to people so I didn't seem too bad. I think we can work at that Obviously beyond this definition. There's a whole vast world of stuff that you can discuss relating to software architecture. There's understanding large code bases. There's testing tools. There's There's a whole world out there that's beyond this but to start We're gonna start at this point Software architecture world is a very broad and flexible one just so we know Let's look at our neck of the woods. What is a Drupal architect? There's there's no Wikipedia definition for this obviously, so I basically made one up and asked my friends and they said Yeah, that's okay. So we're gonna go with that and it is a Drupal expert with lots of site building experience and a variety of project sizes who understands all aspects of the Drupal site creation process and is able to effectively develop a communicative plan of how A system involving Drupal should be executed So we can break this one down into a definition or the definition to a couple of points as well This person would be a Drupal expert And not just a part of Drupal Not like a front-end expert or back-end expert. This would be all understanding all of Drupal You don't and I don't mean an expert in every part. I mean somebody who literally understands how it all works together This person would have a breadth not a depth of knowledge Doesn't mean that they can't understand something in depth, but that's not the requirement Next they can devise a plan of things involving Drupal Note, this doesn't say only Drupal It's things involving Drupal Drupal is part of larger systems very often And they can communicate this plan that they devise So Are they the same definite sort of There's a ton of similarities, but Kind of more on a micro scale Both require expertise experience This one is kind of the same Both make high-level design choices in Drupal. This is called develop a plan of system involving Drupal, but It's basically the same thing Sometimes dictate technical standards. This wasn't really mentioned in the Drupal one, but they do do that I would say that Drupal architects definitely have to dictate project standards features Coding standards are already kind of in Drupal If for anything odd, they do have to be the person that makes that decision And know how to communicate all of the above that's definitely the same in both. It's a requirement You can plan all you want, but if you can't communicate it, it doesn't really matter On the business side of things It's pretty similar architects need to get buy-in from necessary parties They need to navigate office politics. They've got to be able to talk business code systems They have to be able to translate between all of those They need to deal with the budget and the human resource constraints and everything So Very similar But looking a little bit more closely though, we can see a lot of differences One of the biggest ones is the fact that these decisions Many of them have already been made for us Often we don't have to pick a language or a security type or an architecture They're already in Drupal Before anybody says anything I know that there's a flip side to all of these. I'll get to that in a minute This is because Drupal has a lot of good answers For common questions of the topic of needing a cms And provided you're using this as a cms You're going to do okay from the start Though like with much of what I found in architecture, there's no absolutes You can flip this around every one of these can be something you can't override But take databases for example a Drupal architect might want the speed of mongo. So sequels right out the door Really though the biggest difference I can see between the two is that software architecture would usually determine the technology of a project After looking at all the problems In Drupal architects case We start from here. We start from we have a cms and You know because we know that the answer to we need a cms is Drupal So fast though. It doesn't mean we get off scot free Because even though Drupal makes a lot of sane choices for us We know we still have to think about a bunch of things that software architects have to think about or don't have to think about Like our site structure. We're going to do a multi-siter domains module, etc Search engine solutions like solar or google appliance How to structure your content entities taxonomies Panels versus no panels Which modules are you going to start off with an install profile asset management commerce choices? Will it be headless? How about your development workflow or your content entry workflow? Cache lots of stuff. So I mean that honestly, I think this list could be pretty much endless Architects are often going to have to be weighing all of these options against manpower and budget constraints as well so taking an earlier example say Our Drupal architect really wanted mongo, but They don't have any mongo people and they don't really have budget to hire three more mongo people to take care of mongo so They're probably going to stick with the three mysql developers that they've already got so On every journey you need at least three things into the place you're going to the place you're starting from And the mechanism that's going to take you there So having to find the Drupal architect We've kind of gone and seen a little bit of what the destination is In this section we're in the section after this one We're going to talk about some of the things to get you there, but now I think that we need to take a look at our starting point Where are you on this path? Are you pretty green or maybe you have a ton of experience? Maybe you're already a Drupal architect. I think that this journey Or any journey of self-improvement requires looking at where you are so you can build a good plan for what it'll take you to get to where you're going So Put together a couple of little questionnaires that you can ask or answer to yourself on this one This is all about the Drupal technical stuff. I got 10 questions Number one, have you been doing this for a really long time? Do you have a ton of experience? Do you have A particular convention for organizing your features or number three. Do you not even like features? Before do you have a preference on building themes from scratch or using a particular base theme? Have you provided core patches or been involved in those rather long drawn out lengthy issue queue discussions? Have you helped others on Drupal.org or in pound Drupal IRC channel? Do others come to you first when it's on a Drupal related topic? Are you starting to forget some of the old projects you've done? Have you ever said man, I loved rush. Do you wish that there was a module that would remind you to clear the freaking cache? I do I want a big orange button just floats around the screen clear the cache fat head. That's all I want Chances are if you're nodding to these you've probably got some of the technical chops needed to be a Drupal architect Especially the the first one experience. It's a biggie That's half the battle Next let's look at the softer side Once again answer this to yourself or you know out loud if you won't have to really care Do you have the ability to talk business side of things with stakeholders? Have you had to do much estimating? That's that's probably the biggest one for me. Palantir really helped me with that and I'll get into that later Do you know how to work in more than one style of project management? You know scrims not the only are you able to easily come up with many suggestions for Drupal problems? Do you feel confident in those suggestions? Do you get compliment for making technical concepts easy to understand? Do you automatically multiply the amount of time you think something will take by a factor of x? The scotty principle. Yeah, are you comfortable communicating with important people? Have you had projects fail spectacularly? What did you learn? How many times have you recommended that Drupal was not the right solution? That's it. How are you feeling about your answers? You guys nod a lot or a little so-so? That's all right. If you're not in your head a lot answering yes pretty often You might and if you answered yes to the lot of the last ones you might be pretty close on your road to getting towards Drupal architect If not, that's why we're here. It's okay. It's actually a good thing Now we've talked a lot about the goal of where we want to be We talked about where you are So what are the next steps for getting down the path? Personally, I think this works sort of like a mental transformation. Okay When your developer you're you're listening to the architect the architect listens to you he takes technical concepts from you Puts them together and says okay. Here's the plan You take your part of the plan you go do the work easy. It's easy to understand Architecture flips that on its head and says now you need to listen to people and you need to Think of a plan work with very smart people to make it happen so It's a transformation. It's something that you have to get accustomed to and it's something you have to become comfortable with that's how we're free um and To let you know right now I'm labeled Drupal developer. I'm not architect, but I'm doing an architect's job in my job right now And I'm looking backwards and I'm seeing the things that took to get to the point where I'm at You know, I had this job and I had that mentor I got this bit of experience and I went through this horrendous bad deal And you get to this point where all of a sudden you look back and you realize Come to this thing that I did not expect I was going to be and that's where I'm at. So anyhow Traits you get a few of these traits you put them together You get the mental transformation that happens that makes you the person that could be a Drupal architect So what are the traits of an architect? Let's go back to the definition. I came up with and take a look Drupal expert To me this says one thing experience lots of experience. I'm going to say that again experience That is the key like really the key to being a Drupal architect is getting the right experience Second one can develop or devise a plan To do this. I believe someone has to be creative So creativity it's in there talk about why I put curiosity in there in a minute And then they can communicate the plan pretty obviously this means they need to be able to communicate So outside of experience which covers the first point I see soft skills as being all the rest You need to make practically an innovative creative plans that are good for your client's particular needs You need to dig to find out what those needs are after that you need to communicate the plan And sometimes even sell it So the road involves creativity curiosity confidence communication There's much more you can learn beyond that you're going to go to industry specific knowledge general software architecture knowledge A lot more there's a lot more to learn. There's always more to learn But this is a good start top of the topic of experience now It isn't a personality trait or a soft skill like the rest, but it is a requirement In fact, during all else this one do more for you than all the others put together One of the videos I was watching by Neil Ford On software architecture. He said a software architect is someone who's been in enough bad projects to know when we see it And it's funny, right? But it sounds true and it really is If you want to be a good Drupal architect, you're gonna have to have experience And it's key. So because it's key you want to get the right kind. I have some suggestions on that first Wear a lot of different hats. I mean do Do work in every kind Every part of the a Drupal project that you can get your hands on Yeah, do themes build a module Do a core patch do documentation Do everything you can touch it all the It really helps that whole problem of every solution Is a hammer because every problem is a nail The more you get well-rounded the less that problem occurs Next if you get the opportunity work on big Or bigger sites It's true that on on smaller site builds there often isn't a need for an architect Because complex business needs are what usually drive the complex technical solutions that require somebody to architect them So if you can And this usually happens after getting a little bit of experience. We'll be back to that Get on bigger and bigger sites if you can staying with smaller sites It's easier especially if you're a small business like you're an independent developer or a contractor But if you can start contracting for bigger companies or if you can get jobs working on bigger projects do so Really really really really helpful You get a lot more variety of the solutions that you get exposed to and it gives you A better base to build from I've had the opportunity to work on lots and lots of different projects when I was working at Palantir They had just a plethora of different Clients I worked with Lullabot. I worked with basically everybody But the diversity was great because it gave me experience in different industries and different sized projects On mbcnews.com. Thanks to south brown at wallabot for getting me that gig. That was really cool While I was there I got to take part in the construction of this multi level profile site base install profile that we then used as the headless part of 10a.com nbcnews.com and a variety of other things It wasn't the same architecture as Drupal. It used a completely different architecture. It was Headless it used a queuing system That the team was vastly distributed The team was almost as complicated as the project I I can't tell you how much I learned on that the architect of that system was Chris Pucci and He's here at the con. I'm not sure if he's here But that guy's brilliant. I mean the people That you get to work with the mentors that you get Are by far your biggest resource. So That's number three Work with great people if you manage To get your way in there. Don't squander that resource mentors are huge They're at garfield right here. This guy right here one of my first mentors honestly great guy Don't know how many you can actually work with him, but Here he is right here Hit him up for information Anyhow, it's exciting. It was really complicated. Um, and I learned So much there experience more than just Drupal stuff. So What I mean by this is try and experience some of the business side of things try and Say your project manager calls out sick and you've been attending the project management meetings for three months offer to fill in Try it to if your scrum master says, uh, I got a meeting conflict I'm not gonna be able to make it this morning. Say hey mind if I give my hand at that It's not impossible. It's not Even all that difficult and it's really helpful and it helps you understand the other side of the problem Do anything you can on the software side of things a couple of the other things documentation If you can get the opportunity, I'll just say this Drupal architects architects in general If you can make a plan, it's worthless if you can't communicate it and so And it's all well and good to stand in front of a crowd and talk about it But if you can't document it, it can't be Distributed it can't be referred to and if you're not there to answer the questions nobody can figure out what you're doing So learn to document learn to document well Another thing estimation I'll say that while I was at Palantir estimating was probably the task that helped me understand How many important details there are to a large site build And how to come up with seeing assumptions for things that you don't have knowledge on so And how to write out all those assumptions There's probably no better tool I can think of to really understand the breadth of the Drupal project than having to estimate it out I mean all the way down to the field level Thinking of it ahead of time so you can figure out how much to charge the client Tiffany had me do that a lot and it was it was by far the best training. I think a budding architect could possibly have so If you get the opportunity try that out Um So the first trait that I mentioned beyond experience was curiosity Everybody knows that well, I won't say that architects need to keep up with trends in technology Software architects need to keep up with Quite a breadth of trends Drupal architects need to keep up with the breadth of trends and then everything else that's going on in Drupal as well Explain a little bit more in the next section, but the gist is that You can be a lot more creative with the solutions that you're making if you have a larger base of knowledge to draw from Curiosity helps expand that base of knowledge The thing about curiosity is that once you have developed the trait of curiosity It'll help every aspect of your life not just making better solutions But if you become curious you'll have a more open mind and you'll find yourself being more observant as well making it easier to Be creative That's great. But you know how do you make yourself curious? I find there's a couple things you can do one of them is to follow your interests I like all those uh newsletters that are always coming into your inbox and trying to unsubscribe from you can't keep up Actually follow a link or two in those Look through them see if something interests you if it does click it and go read When you do this what you're doing is you're opening up new avenues in your mind new ways of thinking And you're bringing a fresh perspective to the things that you do by having ingested more Breath of knowledge into you The next thing Actually, let me see if I can clarify this a little bit because I totally didn't write that right When you bring in When you when you chase down things you go off on tangents and you start Really learning to be curious You expand that knowledge of the things you don't know you don't know and you turn that into things you know You don't know I'm not sure what that's called donald rumsfield had said it years and years ago, but there's like three levels There's all the things you don't know you don't know then within that there's the things you or above that There's the things you know you don't know and then there's the things you know right This is taking the world Which is a vast circle of all the things you don't know you don't know and reducing that a little bit And giving you a little bit bigger circle of things you know You don't know and a little bit bigger circle of things you actually know and from that You can actually build solutions. So Anyhow don't stop being curious. It really does help with creativity, which is the next section This is where I start getting a little bit funner in our definition curiosity Was not really even mentioned but without it creativity is a heck of a lot harder. So We kind of build on that So creativity is the ability to imagine solutions Or start thinking up new ideas and it's a process that's sort of similar to lego's Follow along here Say you have a bin of lego's and you have like It's a really basic set you got some little four pieces and some six pieces and some eight pieces Maybe a platform some roof tiles. What are you going to build with that? Anybody probably going to think of something like a little building you don't have a lot of options You're working within your constraints. You have the tools to make a little house probably going to make a little house So now imagine you have Some more lego's you have some wheels and you have some Windshield parts and you have some angled parts and some slick pieces. What are you going to build after that? Obviously, it's going to get a little bit more complicated, but you already know what you're going to build You're working within your constraints. You're probably going to build a car so The the the available materials really does help to shape What you think of So expanding your available materials really does give you the better opportunity to build better solutions and this is why The previous part of curiosity Basically gives you a bigger lego bin Now when you're always digging around the web In the giant lego box of technology You're seeing all the new called cool job script libraries or you're you know, listening to lullabot's module monday and going Oh cool fences or whatever You're you're just making a bigger and bigger bin But that doesn't actually help you think of better ways To build different things with all those pieces. You might still just keep building cars and houses So at this point, how do you get beyond that? You have to build creativity. You have to enhance it and Basically you do this by practicing There's an author named james old teacher And he recommends a simple program that he calls exercising your idea muscle now He calls it a skill and I agree with him. It's not a special talent creativity is not something that's bestowed on just you It's not given to just you We we all have it We usually wear ourselves out of it But we all have it and the way to get more creative is to just start using it more often Just like practicing a piano you will eventually get better if you keep trying The program that he has Is it's super simple. It basically it boils down to exercise your creativity daily Doodle a doodle Try and whistle a new song take a bit of code and make it beautiful Do something every day now You get to decide whether it's creative or not And I suggest you go easy on yourself because You know why not it's the practice that matters The way he suggests that I use Is a pretty simple program of Writing down 10 ideas daily I'll vouch for this one by the way It's definitely helped me become more creative and it's made it so that when I need to in a pinch come up with an idea I can pretty quickly So if you need a good starter I'll give you some 10 ideas So here's just one that I wrote up all I was writing this document, but 10 modules I'd make of course that was the first one I think of I don't know why 10 really weird names. I could name my kids I got three of them. I could go on forever on that one 10 movies I'd love to see made 10 reasons why the original dune book was the best 10 characters that would have been way better than Jar Jar Binks 10 things I can do to improve my health 10 things I can do to improve my mood Uh 10 new things I want to learn in Drupal 10 special cats I would love to see in Niko Atumi Anybody play that? That's okay. You can admit it if you get bored. You can check your cats see if tubs has been there 10 apps I want to make for my summer watch And then I went and made one. It was the Deadpool app See when Deadpool was out It's out on the Pelham Market. It's fun. Um It's a creativity practice now practice only works if you do it and it Consistency is the key on this you have to do it daily The he says and I agree with them your creativity muscle will atrophy if you stop And then you have to do it all over again. You have to keep at it Um Go simple on this they get harder. It does actually get harder to come up with 10 lists every day After about a week, you're going to just not even know what theme to stick to that's why I did like a 10 list of 10 lists Um After getting some experience actually so After you get some experience and you develop uh creativity And curiosity You'll probably have a pretty good sized Lego bin from which to build your solutions And you'll be able to think of better solutions to build from them more easily Once you've done that You actually need to present those solutions And sometimes you have to actually sell those solutions to people for them to actually get used And this takes confidence Did anybody see Dan Lin's Presentation downstairs like just about an hour ago Does everybody know about imposter syndrome? Do you want me to just skip over this part because I can get through this pretty quick Or are there Actually, let's flip that around anybody want me to go over imposter syndrome Let's do that One thing about imposter syndrome statistic. I just read said 70 percent or maybe it was out of Dan Lin's slides I'm not sure 70 percent of us actually experience imposter syndrome and you can You can bet I'm experiencing that right now. I'm a Drupal developer Telling you is how to be an architect anyhow, yeah Imposter syndrome it's very real But it's not it's not an impossible thing to deal with For the most part there's some pretty easy steps you can do To make yourself Not feel quite so imposter-ish I'll just briefly go over these And explain them just a bit because I can already see I'm going to go over in time, but briefly First know that you're experiencing it seriously 70 percent of us. That's like all of that side of the room Not this side. You guys are good All of that side of the room is an imposter. How do you feel about that? Yeah 70 percent Know that you're experiencing it and that it's a real thing and that you're not probably actually an imposter Own your successes when you do something right Know that you did that right inside. No, it was you not You didn't copy and paste that off a solo. Maybe you did but But you put that solution together, right stop thinking that there's such a thing as perfect Okay, that's the big one always comparing yourself against this perfect ideal of what should be Nobody's perfect. There's not a single person in this room is perfect Know that you don't know everything and accept that. Okay, that's pretty much what google's for, isn't it? Yeah So keep track of your successes and publish them blog about them tweet them when you do something That's really really cool and you tweet it And somebody who you thought was so super smarter than you says, oh, that's cool. I didn't know that It's pretty validating and it happens all the time Um and quit being afraid of being found out Especially in this community. I can't tell this community loves newbies. Okay I when I started out and I was trying to I was running my own development shop Angie Byron said to me. No, no, no, no, no We need you as a beginner because we need to document how this works from a beginner's viewpoint It's the only place I've ever been of what being a beginner was a benefit. So especially here love being Not and and be open about it. I mean That's just how this community works and if it wasn't here, I probably wouldn't even be standing up here I wouldn't be presenting because this community helped me get past that So we love you Um Outside of imposter syndrome. I have some other tips for confidence in general First of these is fitness A lot of people might not want to hear this but fitness is huge. It's really big for me It seems to be working for him. I had shoulder pain for Well, I've had shoulder pain for probably about 13 years now I played football in high school like be my shoulders up a lot and then sitting in front of a computer for decades Kind of made all the muscles go away and then my shoulders started hurt And so I decided to do something about that and I started working out I decided I liked it and started seeing benefits from having exercised when I did this I realized that my my brain was working better. I was being more productive every time I'd work out I'd get a euphoria feeling and then I'd come back because I Luckily I get to work from home and I kind of get to set my own schedule So I go work on the middle of the day and I come back and my afternoons were way more productive than my mornings um Having done that I can uh I moved from being obese. I was 264 pounds And I came down into normal after about three months So I went from 264 down to 231 and then I started lifting weights and I went from 231 to 231 But I went from obese down to overweight down to normal and I realized that Sitting at my computer Wasn't going to help me live longer. It certainly wasn't going to Make it so that I could see my kids grandchildren or my kids children my own grandchildren for as long I wasn't going to be able to go and experience things with my wife after our kids are grown and left Because I'd be if I felt like I had felt every morning I just I didn't I didn't want to do anything so Also, my wife pointed out that we both aren't getting any more time every day hobbies eat up time So if we wanted to accomplish more we're going to have to make more of ourselves So I made an audacious goal and I said that I want to compete in the 40 and over bodybuilding competition next year in my home state of Idaho So if anybody knows what that's about, you know, how much work is ahead of me And if you don't then that means I'm going to be Standing in front of a very large audience in a bikini Trying to look like Arnold Schwarzenegger from Terminator It makes presenting to this Audience not seem all that big of a deal So That's the part where I get embarrassed my kids a lot. It's kind of fun So anyhow, even if I don't manage to do that even if I don't qualify for competing I'm still going to be like 7 billion times better off than I am right now, right? It Well, and I'm not doing too bad right now either. I mean, I seriously I went from a beast to normal and that only took three months So No matter what It's going to work and I highly Import all of you. Don't try taking up diets. Don't do fads. That crap does not work move your body more Just try and get up and do more with yourself It's catchy. It actually works and it changes your life So Apparently a chex had mentioned that somebody had been trying to get a triple fitness phenomenon going and it hadn't caught on And I'm probably going to pick up that mantle and actually see if I can't get it to catch on because it matters our our community Probably one of the more fit technology communities that I've seen wondering about different tech centers But we can all do better He's still there What if you need the benefits of say an exercise that that that endorphins feeling, you know, the lower cortisol This will do it for you. There's a a TED talk by What's your name? Amy Cutty look it up. It'll be in the resources at the end about About body hacks confidence hacks using your body Power post just standing here for two minutes You get a powerful position. Well, actually increase your endorphins and lower your cortisol and make you I did it right before the session actually was pretty handy Scientifically speaking it hatch your your body into thinking that you're more confident And you are more confident So give it a try if you have a meeting or something that you're kind of nervous about Now let's get back onto communication This one's sort of a combination of things like technical transit translation between like the business world and the tech world diplomacy salesmanship Nowadays in my position at the Forest Service I get to work with this one a lot more There's inter-department relationships. There's politically hot topics. I have to avoid Lots of stakeholders that I have to convince and sell Actually before I go on to that I want to discuss something that I think might even be more important and that's finding the actual need of your customer So I'm going to hop to this one real quick. It's it's more important than we might run out of time. So Customers often don't know what they need And when they're discussing things sometimes they're they're telling you about the things they want or something cool they saw Or maybe they know something they can't really articulate it and this is the place where I think we as solution People can be a lot more helpful first Find out what they want you you can do that by helping them to describe it as user story with actual numbers and If they're not using numbers or if that they're not using definite terms help them to quantify Often the customer will give you a vague feely sorts of words like like flexible or maintainable or fast Or inexpensive You can't use those that's not there's not a definition around fast If you leave your requirements like that your developers won't have what they need to build solutions And this is good for us at any point. We can help dig for those solutions even if we are just developers So and at the end you won't have anything to go on to know if you've gotten your task done so There was a fantastic example By keith brathway in a book called 97 things ever show for software architect should know And it was must respond to user input no more than 1500 milliseconds under normal load to find as the average response Time between 750 and 1250 milliseconds response times less than 500 milliseconds can't be distinguished by the user So we're not going to pay for that. That's that's a real requirement. Okay, when we're getting stuff like The user experience needs to be better And you know the users have to be able to do this thing more quickly That's not going to define well enough to make tasks and user stories from so really help your customers quantify um The questions you can ask to get through that is how fast how many how much Ask the questions get the quantified the answers If they're still having trouble with that You might be able to use the tool the five wise is anybody familiar with this one Five wise is a methodology that was created by toyota during one of their reinventions And basically it's just a good way to get to the bottom of any problem Here's an example off of wikipedia It's a really vague problem. The battery is dead. Why? Well, the alternator is not functioning. Okay, why? Well, the alternator belt's broken. Okay, why? Well, it was worn out beyond its useful service life and not replaced. Okay, why the vehicle was not maintained according to its maintenance schedule That's the root now You can use this problem just about or you can use this this y this digging y y y solution finder and just about anything and I can bet you can imagine plenty of scenarios that Where drupal's cash hasn't been cleared is the third or fourth y Happens every time So now let's get back to the communication part. We're pretty much Almost out of time actually so In all my previous roles, I've been fairly technical minded I I spoke drupal to people people Spoke drupal back to me. That was pretty much the job my current role. I don't get to speak technically like I'll talk about how our department can support and facilitate other departments and sell on how Necessary we are and convince them how our product can reduce dreams on web budgets while simultaneously Increasing time utilization for content entry. Of course, you know, I'm talking about creating a base profile, right? That's it But that's not how you talk to them. You don't say I'm creating a base profile with base theme based on bootstrap And we're gonna you they're just gonna look at you like you're all looking at me right now So We can't talk like that when we get to this point We really have to start talking about things like needs and desires and budgets and you know Documents and and helping and support These are the words that you talk back to them That's the language that they're speaking and I don't really have a suggestion on how to how to accommodate that other than Learning your business side of things such as if you're in the medical industry learning the medical business if you're in government Learning your acronyms if you're in insurance learning that language You learn their language And start using it and the more and better you do that the more of a benefit you're going to be to your customer They should I'll just say it this way. They should never have to learn our language No customer should have so once you start talking their language You might often have to do it in a persuasive manner. I love this one. This is by Jeff Eden This is what I call salesmanship because often you don't you have to sell your problem or your your solution or yourself To to get the solution that you know, they need into their hands I'm only going to make one point in this and that's that you don't sell features You sell benefits when you're talking to them. You tell them how it will help them. You do not tell them what it will do They don't care about the workflow module. They don't they don't care about akamai They care about faster response times and how their editors can contribute content safely Talk solutions talk benefits do not talk Or talk don't talk solutions talk benefits I'm gonna skip right on through here Trust your team We're completely out of time. I think oh no, we're at 50 minutes. Oh, we're good. Okay So now you're this bigger person when you get to be the architect You're gonna have a higher stakes position. You're gonna have a higher profile position It's gonna be one where it makes you feel like I really need to get this done. I must make this happen Now you get there You don't solve problems by telling everybody to Yeah, can you work on sunday? We need that tps report. You don't do that You do that by surrounding yourself by extremely smart people and listening to them And having them help you solve problems And then trusting them when you give them the work to do and then crediting them when they've done it well That's a really short synopsis Thank you The whole credit thing is really really cool because then it shows your customer that you've got a team Rather than just a bunch of people that are costing them money Wow, I sped right through that good deal. So here's some of the resources that I've been looking at Now I'll tell you I got a lot out of a couple of these and I didn't get so much out of the other ones because I got bogged down because I couldn't understand them The first one O'Reilly Software Architecture fundamentals video series that was awesome They're kind of boring to listen to but they're a good good video presentation on the broader terms of software architecture and Getting you to understand what that world's all about the next one Amy Cutty's 20 minute talk on body hacks definitely watch that it's It's really fascinating and it'll really help you in case you ever have to get here 97 things every software architect should know really quick ebook. It's on O'Reilly's website. It's a good one software architecture Software system with architecture working with stakeholders and viewpoints and perspectives I'm bogged down on that one. I'm bogged down on the next one too Although they're both supposed to be really good software architecture practice and Then of course you get down to the blog of James. I'll tutor this guy interviews everybody by the way If you get a chance to go read his blog, you'll be fascinated. He's some of the people he's interviewed and gotten bits of wisdom from It's awesome And then success principles how to get from where you are and where you want to be by Jack Canfield The guy who wrote the chicken soup for the soul series of books He wrote this book too Literally changed my life a good book So here's some Things that some of my friends have tweeted at me when I implored them to please tell me How to be an architect, please You can think this guy for that one This one says architectures where soft skills and tech skills meet fornicate and produce a bouncing baby product Thanks Larry Next one is uh by zen doodles. Remember the scotty principle one estimate. That's one I talked about with the multiplying by a factor of Josh Brower says seek first to understand the problem you're asked to solve is rarely the problem the client wants to solve Larry had another one your jobs to figure out how to make your dev team board not needing any custom code Zen doodles had another one when defining requirements nougou shape for the 95 solution you can do with 5 of the effort I like that one. I didn't really mention that in the thing because it's pretty well summarized right there Larry here says sometimes Larry you're like all over this Sometimes a small change to the design can save 40 hours of work. Your job is to help the client make an informed call on that Next learn. Oh, yeah, Earl Miles Guy who wrote views and chaos tools might know something learn the droop away, but don't be slavish to it It's not the right. It's not always right. Sometimes it's just history And it's changing a lot now anyhow going into droop late. So he's very right on that Larry said something similar go with the grain Drupal has a very strong grain. It's right more often than you think but not always Damian McKenna said working with p work with pms to get a better handle on estimating I covered that pretty well CHX said experience is I have already made the mistake you're about to make Put the nuclear bomb behind that one too. It works Josh Brower on hiring people far more qualified than himself. His goal is always to be the dumbest guy in the room So Any questions Seriously, you guys actually get to walk around a little bit now Enjoy some air We got out early Thanks for the applause. That's awesome