Re-invent Yourself: Flash to Flex Developer

Preface

I missed David Samuel’s Re-invent Yourself Personal Retreat this weekend. Last week was stressful, and I got little sleep Thursday. When the alarm went off Saturday morning at 6:30am, rather than hit snooze, I just turned it off. In my fading moments of consciousness, my left and right brain had a friendly debate, neurons firing over postulates and hypothesis of the risk/reward ratio of getting up and going.

I had decided 3 months ago I would go. I had decided Friday night I would go. Yet, I didn’t go. At 11:00am, when I finally awoke to a blonde licking my face and stepping on my neck, I was very disappointed in myself. I’ve been cursing myself since.

When I look back on my life before I pass, I’ll have no regrets, but this will be one of my admittedly bad mistakes. I’ve seen David speak before, and he had 2 colleagues with him this time, so I’m sure it was off the hook and I could of gained a lot.

Background

Why so glum about a seminar I missed? Because I really could of used some insight on how to re-invent myself.

11 months ago, I fell in love with Flex. Coupled with Flash, it makes for a great team to create great apps, web and fat client front-ends.

After a few experiences in large Flash applications, I realized it was time to move on. I was hoping I could remain a Flash Developer, and support the Flex Developers like Nigel’s article describes, but it was not to be. The more responsibility that was bequeathed to me in terms of application architecture, as well as a growing amount of team members, the more I realized Flash isn’t cut out for large application development. Weekend contract jobs, 3 month web app stints, and components created for re-use? Flash owns.

But when you start getting into 6 months, have significant amount of views, and large amounts of data that are kept with your apps state… there is no other alternative than to use Flex.

Developer Attitude & Pashion

I am not like a lot of my colleagues’ in the industry, however. A majority I would assert are definitely of the mindset that you utilize the appropriate technology for job. If an application requires AJAX, Flash, older browsers, MySQL, Oracle, .NET, ColdFusion… whatever combination of client, middle, and back-end tier technologies work best given the business requirements, technology constraints, and your current resources.

I, on the other hand, am loyal to craft, not to company. An ex-marine (once a marine, always a marine) manager at a former job told me that. I always liked to ask him questions about management and other terms that had nothing to do with programming since he could explain it using terms and analogies I could understand. “Managing Einsteins” as he put it was challenging, referring to managing a plethora of engineers in our technology department. He used that phrase towards me, saying that because I am loyal to craft, and not to company, he as a manager needed to provide opportunities for me to excel and be challenged at my favored technology or risk losing me as a company asset. Bad ass concept!

I find that extends, however, to my view on my career. I thrive in instability, work extremely well under pressure, and have a passion for what I do. So, if the appropriate technology to use on a project is AJAX… I simply wouldn’t do it. Hear me out. Am I qualified? No, I don’t do HTML + CSS + JavaScript for a living, so anyone who considered me a resource on that project has grossly misjudged my skill set. Can I learn to do it? Absolutely! It is very similar to what I do today; using an SGML markup to render form elements, connect the logic the forms use together via an ECMA script based language, and style them using CSS.

Do I want to? Hell no. I’m not passionate about it, fail to see how I can excel at it since I hate it, view it as an inferior technology, and if Jesse Warden isn’t kicking ass and taking numbers, he’s finding a way to do so. And that way is finding an avenue where people can utilize my skill set for an appropriate job.

What that boils down to is targeted employment opportunities. Meaning, my contracting and employment goals are focused on getting employment in a specific area of development, mainly Flex with a little Flash vs. just a steady job that pays. Many jobs, big and small, require developers to wear many hats. I believe any competent engineer can code .NET 1 week, and learn to code in PHP the next, and succeed at many projects in the long run.

Do I want to? No, but will I? Well, in my experience, I’ve never had that happen. I’ve had to learn ASP because there were no programmers available, but I still used Flash for the front-end. I’ve had to learn enough about SQL Server to update database tables… but I still used Flash on the front-end. Currently, I’m learning about setting up and using ColdFusion… but I’m still using Flex on the front-end. The only thing I can conclude is that in my case, there is no question what Jesse Warden will utilize on the client-side, but on the middle-tier and back-ends, whatever is appropriate. It is already assumed that Jesse wouldn’t be here working on said project if it were not already previously established Flex was the appropriate client side technology.

Hiring Craze

So, with that being said & established things have been crazy this summer. Thanks to my large contractor list, I’ve managed to hopefully fulfill the daily job & contracting requests I get to potential clients & headhunters. There have been cases, however, where potential opportunities were actually in my best interest to see where they led. It doesn’t mean I’d actually take said positions, but hearing what people have to say is very telling of the industry, opens up new networking contacts, and at the very least hopefully allows me to find them a potential candidate I may know who’s appropriate for the opportunity.

Usually February/March and October/November are “Hire a RIA Developer” months. Not sure what it is, but my guess is budgets are either approved by the beginning of the year, or there is enough left over towards 3rd quarter to hire more. Either way, I usually get inundated with contract positions and potential jobs for employers either seeking me, my skills from a website, or most often if I know anyone. My canned response is usually that I’m busy (which is true), and I then provide them with my list of contractors, with notes on who’d be most appropriate to contact.

The ones that sound interesting to pursue, I’ll usually follow-up with I’m interested, but not available with the hopes that they’ll let me in what their company is doing; I’m always fascinated & interested in what companies are working on in the Flash & Flex sphere so take every opportunity to find out more about it.

Three opportunities in the past 3 months have really hit home to me, 2 of which made it to employment descriptions and I had to decline because I already have a great gig going on, but again wanted to hear what they had to say.

The first was a Flash opportunity working with a bunch of experienced and talented developers as well as some I could work with to train. I could make good money, work in a stable & growing company doing product based work (meaning re-use of code base without wildly different approaches to different projects), train fellow developers, and hopefully work towards management training. Problems? No room for Flex in the near future. I’ve had enough battling with Flash in my career to know that even when developing multimedia games, I’d prefer to utilize Flex. I couldn’t justify doing small time development; while extremely less stressful as well as leaving more room for getting myself mentored, something I’ve longed for from a couple past jobs, I know I have other areas where I should be to improve my career, case in point working on larger scope projects with more appropriate deadlines. Challenging my pragmatic assumptions is my current personal goal. Meaning, I know enough about OOP, encapsulation, and design patterns that they really falter under tight deadlines; I’ll use them until the boss starts giving me the stern gaze at which point they go out the window without much fan fair.

Ok, cool, so at the time, I had 2 other real, Flex opportunities on the horizon. I’m ready to move to the my next level. Keyword, my, as I don’t think going from smaller time development to more Enterprise level development is the next level, because seeing Enterprise Developers put into a smaller shop is just as paradigm smashing, and fun to watch.

I’ve had a series of emails that lead up to a 2 minute call this morning. Usually what happens is, if people press me to talk to them instead of sending them contact information of those of my fellow contracts, I give them my current contract rate and explain again how much I apologize, but I’m busy beyond belief, and am willing to take a few minutes to hear what they have to say, and recommend either a personal path or a technology path; they should look into hiring “X”, and/or using technology “X”, sometimes what they already have.

The majority of the time, these extremely short phone calls are with recruiters, while I’m making lunch. I try to be as positive and helpful as possible, gleaning as much information as possible about the position(s), and recommend who they contact and why.

When it’s an actual potential position, like today, I try to pry as to why they want X technology (Flash or Flex), how they found me, and why, all the while preparing in my head who I can recommend, and confirming they sound like they are on the right technological path.

Tipping Point

Today was the 2nd time I’ve seen a clear gap in Flash vs. Flex developer employment. This is big to me, because for the past 18 months, it’s been more about education. 9 times out of 10, they just had no clue about Flex, or had heard some information about it and Laszlo, but were investigating it at the same time as looking for potential candidates. At this point, I’ll proceed to explain the various options, and give my suggestions.

I clearly explained I am not interested Flash development, I am 100%, gung ho for full-time Flex development, and recounted my past experiences up till now to give some context as to why. I heard him out, heard what he is looking for, and got a tiny bit of information on their existing products and plans.

I’ve done this like 3 times this year, first 2 with recruiters, so it wasn’t anything new… hell, it’s getting routine. What was different about this call, however, was the clear cut & quick understanding that I wasn’t a fit for the position.

People may think it’s obvious, but it’s amazing how easy this stuff is when you know what you want to do. Ask anyone what they want to do, and I bet you the majority have a guess, not a true, confirmed understanding. I do, so when people ask, it borders on yes or no.

I guess what was scary is this was an additional incident in a growing series, and most importantly, it happened when I’m an already employed Flex contractor vs. a recently un-employed Flash contractor. It was confirmation I had crossed to the other side.

Eerie.

The only thing I didn’t like about the conversation was I gave the false impression that I use Flex for mundane, forms based development, creating SWF front-ends for CRUD (create, read, update, delete) back-ends, and how I no longer utilize my multimedia skill sets that flourished when using Flash. That isn’t really true, nor an accurate picture of what I do, but it certainly was illustrated in the gentleman’s response comment asking if I knew anyone who was good at doing creative, application development with Flash.

Apparently, I failed at illustrating that Flex was more than capable of doing that was as well, even with Flash’ help via integrating the workflows. It was ok, though, because the current Flex 1.5 license doesn’t fit with their budget and team size. Regardless, Flex Builder 2 does (at least from initial reports), and I was frustrated at myself for not correctly articulating those points.

I may give the impression I get these calls “all the time” and that’s not the case; it’s just the pure volume and frequency of emails & phone calls about asking for Flash & Flex talent, compounded by the re-invigoration in discussing Flex because of the Flex Builder 2 announcement at MAX is making me euphoric about the state of this industry.

Conclusion

Bottom line, I’m in the process of re-inventing myself as a Flex Developer, and it’s hard. I could really use some guidance and that’s why I was really upset about not attending last weekend’s Re-invent Yourself retreat. Although the work I do is more appropriate for Flex development, my years spent in Flash make it that much cooler, and I can see a lot of opportunities in mixing the two.

Explaining that, formulating that into an actionable plan, and setting multiple personal goals at attaining & defining what a Flex Developer is, however, is proving extremely challenging.

I know I want to continue doing what I’m doing currently, and that is doing Flex work for my current employer. At least I got a solid base to work from, and all your base are belong to us!

11 Replies to “Re-invent Yourself: Flash to Flex Developer”

  1. argh!!! I jsut had a huge comment to your post, then i accidentally clicked on one of the google ads and lost everything.

    pretty much what I was saying is that I have been thinking about the same thing myself lately.

    I work at a studio that I helped build almost from scratch (I am employee #1, after the owner). Most of the work we do here is entertainment industry based, movie sites and such, and I get to build some decently cool apps here and there, where I get to hone the OOP skills. I’ve always been more partial to building apps then building movie sites, which can pretty much get away with actionscript 1 for the entire project and would be fine. I need more of a challenge than that, otherwise I’m pretty much disinterested.

    Now flex comes along and in the short time since the alpha has been available, has totally rocked my world. THIS is what i want, FLEX is where I’m headed, no doubt.

    So now the crossroads…stay where I’m at, continue to do decent work that doesn’t challenge me, and take the easy money… or move ahead with the next leg of a long journey and re-invent myself as a flex developer.

  2. It’s really cool to see someone talking frankly about their career, as opposed to pretending they live in an ivory tower unattainable by mere mortals.

    It sounds like you’re having some of the same issues a lot of us Flashers are having…A lot of very smart IT hiring managers still don’t understand the Flash Platform. I’m sure there are a lot who don’t even realize that Flex and Flash both make SWF files. On top of that, a lot of times hiring managers don’t even know if they are looking for a graphic designer or a programmer or both. My solution is to try to be an expert in most aspects of the Flash Platform, and keep an up-to-date design portfolio… But I have a feeling that makes me seem unfocused. :)

  3. Yeah I have thought similar thoughts although yours make it sound like your heads going to explode lol.
    I tend to find myself rolling with the punches but I only really enjoy the work I do for myself which of late has become more flex less flash. I wonder where it will all end up?

  4. Hey no worries Jesse. You’re just an early adopter, that makes for a lot of pressure. Flex is still a marginal phenomenon outside of, hrrr, you, Ted, and Darron I guess ;) But seriously, you won’t have to explain all of this whenever Flex2 comes into town and Macromedia correctly markets it as the next big thing. Then you’ll be regarded as one of the original Flex gurus, become non-geek-famous and you should invade a small country (say Poland) in about 3 years from now. From then on it’s ‘re-inventing yourself as an enlightened despot’.

  5. Jesse,

    What I think you are missing is that you have already ‘reinvented’ yourself. You are out talking about it enthusiastically. Once you believe in what you do or who you are, that’s when you become that and can accomplish what you want. You seem to already be there, you just don’t realize it. It’s important not to disown technologies that you don’t use or that you no longer use, but present why you love what you are doing now. Present why you transitioned, what you loved about what you did before, and why you wanted to do what you do now. The advice you seek is in yourself, not a conference or a book. Its self realization.

  6. Daniel,
    He did.

    Jesse,
    As for the people around, I’ll point something out, to illustrate how those opinions can change. You remember that day I came by your desk and was talking about how they had improved Flex with 1.5? I mentioned what they had done, MM was closing in on creating a more logical application solution, but pointed out some remaining flaws (which alot of been addressed in 2.0). You and Mr. Campbell slammed me for my opinion. 1 year later, you are evangelizing it, and Matt (BELIEVE IT OR NOT, laughin…I know its hard), thinks Flash/Flex is actually a viable solution. So believe in what you are doing, and if what you are doing is actually something worthwhile, everyone else will to. You are in a good position man and are where you want to be, stop stressing ;)

  7. Dude, sounds like full circle to me it’s a repeat of your past. I remember you back in college coming to me with something called ‘Flash’. We all were like WTH is THAT?! You were all hyped about it being a big deal it had small file size and how we animators could make our Final Project Animations fit on a floppy disk. I remember back then you also kicked serious butt in Director with advanced Lingo. I agree with Patrick. You are an early adopter dude. You don’t really need to reinvent yourself. Just be yourself and the metamorphisis just happens. You stuck with Flash sense……forever as I can remember. And ultimately became a guru. Hats off cause it can be hard for many people to focus sooo hard on 1 techonlogy and go for perfection for such a long period of time. Now Flex has your world on fire and all I can say is here we go again :) Enjoy the ride man!

  8. To resay what everyone else has said, you’ve already reinvented, no? I could probably only name 10 people off the top of my head that work on Flex outside of Macromedia, so your name is certainly out there. Just keep doing everything you are doing.

  9. You’re not the only one Jesse. I could identify with a lot of what you wrote. Like you, I’m not ‘passionate’ about working on mudane projects. It’s a bit like a Sumuri honour thing :) The master will not rise to a challenge that is not worthy. It’s a common problem with intelligent people.

    Central excited me. I could see incredible potential. I invested a lot of effort into seeing how far I could push the capabilities of the primitive prototype, with a view to what I might acheive in the future. Being an early adopter is a leap of faith. A potential waste of time and money and a risk to self esteem. Minor fame and noteriety may last only as long as your technology is in vogue. It’s not your objective anyway. Like any artist, you strive to attain your own vision.

    The problem with the Flash Platform is that it’s not complete. In particular, the ‘service’ layer of the Architecture isn’t finished. (see Kevin Lynche’s white paper, that has just been updated). The service layer is the bit where the services get sold to the customer. It creates the demand for stuff to be created in the first place. Let’s hope that Macromedia get it in place soon – or at least tell us when it will happen. Considering the risk that we’re taking, Macromedia should make more effort to keep us within the loop.

Comments are closed.