Do Front-end Developers need to code custom modules, too?

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
katy5289's picture

I have 4 years experience in building and theming Drupal websites. I also like creating new designs in Photoshop and converting them to beautiful, interactive themes. My specialty is called Front-end Development and my skills are in HTML5/CSS, jQuery, some PHP/mySQL. Recently, as I've been browsing the Drupal job ads, I noticed several companies were advertising for Front-end Developers who also can do custom module development.
Developers who code custom modules are called Back-end Developers who are often not very good at Front-end Development tasks such as CSS and theming. Are Front end Developers disappearing? Do all Drupal themers need to be custom module developers, too? I look forward to your comments.

Katy :-)
www.seascapewebdesign.com

Comments

That's not all they want!

jnicola's picture

That's not all they want! Some companies want project managing, front end developing, back end developing, sales oriented, Conversion marketing skilled brogrammer wranglers all wrapped into one!

So really, front and back end is just the tip of the iceberg.

In all seriousness... I think it really comes down to needing to do more with less these days. The days of excess are gone (or so I hear, I never got to appreciate these days of excess) so when you've got to do more with less, a diversely skilled employee will take precedence over a nice specialist.

Front end development and back end development will make you a useful employee, but there are other useful skillsets out there as well :)

Jesse Nicola -- Shredical six different ways to Sunday! -- My Portfolio

frontend/backend different personality

martinp17's picture

I believe it's one type of skill to have an eye for the details and intuitiveness of a web pages, it's another one to be a great module developer or to do backend integration with web services etc.
We use Drupal sometimes without any frontend (as the primary mechanism to interact is via SMS messages), but have plenty of challenging coding to do (Ubercart customizations, encryption for high security banking level web interfaces).
Developers tend to be stronger on one side vs the other. Both might have to think about the other side however once in a while...

Hey Katy, It depends really

gbernier's picture

Hey Katy,

It depends really on what kind of work you are hunting for. A business owner is going to ask for the stars, because they know a few cross breed types are out there. There are mixes of people like Jesse said and employers love to pick them up.

We do a lot of work with firms all over North America now and there is still a demand for front-end developers, it's been my experience a front-end developer is going to split two ways either they will be more leaning towards design or to coding. Both are valuable resources to a team.

It also depends on if you are looking to become an employee, be a freelancer or a contactor as well to how you sell your skills. In the Drupal eco-system everyone is screaming for talent, they want someone who can do the work but most importantly have a passion for what they do.

Cheers,
Gene Bernier

Re: split ways

marcrobinsone's picture

I agree with this. Most project owners / stakeholders prefer Drupal developers with overlapping skills and very good sense of humor.

To add to Gene's exposé - just my personal observation: priorities do split depending on the firm's cultural reference.

Here in the Asia-Pacific region, certain skills are deemed more preferred than what might be considered cliché in North America.

English firms have other skill-sets at the top of their list (e.g. 'community management' experience is deemed important).

So to be on the safe side (to be a "fire-proof" developer), it's really good to know how things are done in every spectrum in order to produce decision-making factors for the site-owners / stakeholders.

*stakeholders: my definiteion would be, "people who want the Drupal website(s) up and running, regardless ... (of the hurdles)".

At the end of the day, you'll probably choose projects with tasks that is very close your heart - something that engages & challenges you along the way, and one that avoids a heavy encounter with the villain of the all: burnouts.

I would say it depends on the

Michele Wickham's picture

I would say it depends on the size of the shop. Companies that ask for everything under the sun may expect one person to wear several hats because they may not have very may Drupal projects and thus no reason to hire a larger more specialized staff.

Where I work, there is a definite distinction between front and back end, but then again we manage a very large install and it makes sense to have specialists for efficiency sake.

I second this

jessehs's picture

In a Drupal shop, there is a definite need to understand and work with the way Drupal works. A lot of it is in the backend, so it really pays to have backend knowledge. In a larger shop, with a lot of projects open at any given time, you can get away with deferring the more technical PHP work to a developer, whereas with a small shop, a front-end person would be basically wasting time trudging through difficult work much of the time, waiting for the bread and butter front-end work.

Definitely Depends on the shop

chrsnlsn's picture

As i've grown as a developer and themer I don't think it would be possible for me to create a theme without a custom helper module unless it was very bare bones, because sometimes to make a form look just right you have to get your FAPI on.
I also think of these as being distinct skill sets

Designer - creates the photoshop files
Front End person - brings the project to the point of a working html template
Themer - Takes the template and creates the theme
Back End Developer - Handles data migration, Role and permission configuration, Views, all the way to performance tweaks etc.

How many hats you wear on any given project is up to the resources available at the shop. Luckily I look terrible in a designer hat so I never wear that one.

Funny you should mention your

jnicola's picture

Funny you should mention your distinction...

I never really considered myself to have much back end development strength... until I went into an interview, and the person interviewing me said "So your portfolio looks like you do a lot of back end work..."

I consider views, permissions all that stuff front end developer stuff...

Jesse Nicola -- Shredical six different ways to Sunday! -- My Portfolio

Your probably right

chrsnlsn's picture

It's a carry over from when I did all my sites from scratch the 'admin section' and 'back end' were kind of interchangeable terms, so now I still kind of think of the logged in section of drupal as the back end.
What actions do people generally consider back end work if anything configurable by a UI is front end?

Preach! As a freelancer, I do

greta_drupal's picture

Preach! As a freelancer, I do everything but write custom scripting code. I definitely use the heck out of Views, Rules, Context, etc. I've been considering that part of site building. And, I theme and focus on UI/UX development.

As someone regularly applying for job positions, I too grapple with the distinctions. Seems that every post I see asks for "custom module development", whether it seems appropriate to the job title or not.

Does no one value great Site Builders?! I'm never once seen a job post for such.

From my experience, programmers rarely make good front-end developers. So many modules, and Drupal itself, have lousy UI and fall short of common use cases.

I think that the Drupal community is making a mistake by not better integrating (and welcoming) the front-end folk. Drupal Ladder, anyone?

Until Drupal sites (bigger than a mere blog) can be created without the need to know a scripting language, Drupal will continue to alienate many otherwise great users.

I still consider myself a Web

greta_drupal's picture

I still consider myself a Web Developer. But, with respect to Drupal, I make this distinction: "Web Developer but not Module Developer".

"Themer" is another job title that has front end and back end components. You can create a beautiful subtheme without writing a lick of PHP -- skin with CSS alone. Yet, there is the Drupal theme layer that requires one to be a PHP coder. Too bad. I think that alienates a lot of great designers.

Good point, I hope your right

fmeetze's picture

That is some interesting insight into Drupal. I'll have to check out some of the modules you mentioned.

I've been professionally building custom php websites for several years now. Being only a week old with Drupal I am amazed at the fact that every application I've built in the last two years is already in core Drupal 7.

I am just now considering Drupal in a few of my projects with the goal of the very reason you mentioned. It is sometimes hard to consentrate on UI flow as much as I'd like when a lot of time is chewed up debugging brand new code. Hopefully Drupal will provide us more time in the lab with better collaboration between partners.

In our company we are

claymarshall's picture

In our company we are constantly evolving the role of the front-end developer. As we have become more consistent with the architecture of our sites and the selection of contributed modules and themes (context, views, display suite, omega), we are able to create sites that require less and less custom module development and templates.

At lease for the near future, I can't image that any of our sites that will not require some custom module functionality or custom templates, however, we are starting to place most of the initial site building responsibilities on the front-end development team. The team can get a site to 75% of required functionality before we need to engage the back-end developers.

You bring up an interesting point about whether or not custom module development should be required for front-end developers. I think that we have added that to many of our job ads as an indicator of whether or not the individual was familiar with the Drupal API and proper coding practices. But as I am contemplating yet another job post, I will need to rethink that.

At DrupalCon in Denver, I attended a session where there was a pretty heated discussion about what Drupal was becoming. Was it a primarily UI configurable application for creating web sites or a coding framework and could it continue to try to be both? I don't have an answer to that, but the progress that has been made allowing so much of site functionality and content presentation to be completed without custom code other than HTML/CSS and JS, it seems as if the front-end developers have a much larger role in site building than before, at least for us.

You bring up an interesting

greta_drupal's picture

You bring up an interesting point about whether or not custom module development should be required for front-end developers. I think that we have added that to many of our job ads as an indicator of whether or not the individual was familiar with the Drupal API and proper coding practices.

Uh, even that suggests that you are expecting that person to be a programmer.

But as I am contemplating yet another job post, I will need to rethink that.

Please do. At least consider adding it as a "bonus skills" rather than "required skills". As soon as I see "custom module development" in a job post (which is pretty much all of them), I just abort. I suspect that others do the same. Not that most employers are hurting for applicants, but in some geographic areas they definitely are; and are likely missing some great candidates.

Personally, I have:
...20 years of professional experience as writer/editor
...15 years of professional experience in film/video (producer, videographer, editor)
...15 years of professional experience web developer
...3+ years of professional experience as a Drupal {whatever I am}

Seriously, am I useless to a company because I am not a PHP programmer? Job postings seem to indicate that is true. Drupal is so programmer centric that I am really rethinking continuing with it. And, I know other really talented site developers who are as well.

I think that you are right. Drupal needs to decide what it wants to be. It seems like a framework that tries to masquerade as a turn-key approach. It can be that, for very simple sites.

But, as soon as the client needs some seemingly small tweaks, suddenly you need an (advanced) themer or PHP coder. I contacted one nonprofit who had posted for a pt Drupaler. They had a long punchlist of seemingly little things. But, to accomplish it in Drupal was a big thing. Their budget for this reflected their expectation (which was reasonable), not the Drupal truth.

Excellent comment

tonychung's picture

Greta ... thanks for chiming in. I think that most job postings in general are a combination of wish list and buzzwords, because a job posting has to provide a certain level of detail. Plus, from an employer's standpoint, "module development" could be anything from taking existing modules and customizing the preferences, to defining requirements from scratch, and developing the user experience and code yourself.

So there's front end, and there's front end. Some front end developers specialize only in the client experience. But if the client experience relies on server calls to a backend program, then it makes sense to learn to maintain the server portion as well.

Back to Katy's original point, I guess we all need to figure out what our core skills are, and market ourselves through those. Then add on, "but I'm comfortable experimenting and exploring alternatives, and could learn those skills as needed" if the thought of doing so interests us.

While there are a lot of one-stop shops out there, I think it's really hard to find someone who does everything of equal proficiency. Some of the best programmers aren't good graphics people. Some of the best multimedia people rely on third party code and can't fix things that break.

Greta ... thanks for chiming

greta_drupal's picture

Greta ... thanks for chiming in. I think that most job postings in general are a combination of wish list and buzzwords, because a job posting has to provide a certain level of detail. Plus, from an employer's standpoint, "module development" could be anything from taking existing modules and customizing the preferences, to defining requirements from scratch, and developing the user experience and code yourself.

A big problem here is that many of these positions are being solicited, and candidates screened, by recruiters. They tend to have little to no technical knowledge, and even less knowledge about the nuances of Drupal roles. Probably true of most HR departments.

And, job application software used by many companies, will scrub the applications by keywords. So, if "module development" is in that required skill set, it has to match the application or it gets tossed.

Agree

Grammarian's picture

I get calls fairly often from recruiters who see Drupal on my resume, but they are for programming jobs. I too bail when coding is required. I build sites and customize themes, develop and manage content, set up taxonomy etc etc but I don't do any programming. It is frustrating.

Useless?

bedlam's picture

Uh, even that suggests that you are expecting that person to be a programmer.

Whatever Drupal or other PHP web-apps may become in the future, I don't really see any way around requiring employees who work with code in Drupal to know some PHP code. This being the case, it's reasonable for a shop to choose a person with demonstrated proficiency with the Drupal API over a candidate who doesn't (this helps 'future-proof' the code to a certain extent and ensures that the code will be comprehensible to a wide spectrum of Drupal developers).

Whether or not this 'demonstrated proficiency' means that candidates for positions mainly concerned with theming should be able to write modules from scratch is another question. Anybody writing code that gets run from inside Drupal (or even javascript that runs on Drupal pages) should be at least familiar with the relevant parts of the API, but this doesn't automatically imply that such a person should be able to code modules. A themer, for example, will seldom have occasion to use some of the more mysterious hooks or api functions such as e.g. hook_menu().

Seriously, am I useless to a company because I am not a PHP programmer?

Are you useless? Doesn't sound like it :) But an employees who can't work with a bit of PHP code, may only fit the workflow in a shop that has very rigid distinctions between roles (e.g. "HTML/CSS-only coder" or "Drupal-configurer-only" -versus- "PHP coder+whatever"). I know that some shops may try to do this, but I think it's pretty unusual to achieve it.

DotNetNuke developers

greta_drupal's picture

Before I started using Drupal, I developed sites with ASP. Built my own CMS features into sites for DIY clients. But, I wanted to work more with nonprofits/charities, and Drupal was what they were using at that time.

Doesn't seem much a call for DotNetNuke developers, but maybe I should have another look.

Many different Drupal roles

freelock's picture

Hi,

We're a Drupal shop, and we see some pretty clear distinctions beyond what is mentioned here. First of all, @greta_drupal, we do value site builders -- it's just that they're hard to find because that's a pretty Drupal-specific skill.

Here's how we break down the skill sets into roles:

  • Site Builder/Architect: responsible for architecting the information on the site, deciding what goes in a content type vs a vocabulary vs a new entity type, etc. At entry level, this is building fields, views, permissions, etc.
  • Front-end/themer: responsible for taking a design, picking a base theme, implementing the CSS/HTML/templates, considering mobile/responsive design, building sprites, etc.
  • Back-end/module developer: Creates custom modules as necessary, creates integrations with other systems, handles data import, spends a lot of time in the debugger tracking down the source of bugs. Also more advanced Javascript/browser work, form API, etc.
  • System Administrator/performance engineer: handles deployment issues, performance and scaling issues, profiling, configuration management.

We see a fair amount of overlap between these roles, but when I'm hiring, I'm looking to find somebody who can become a strong resource for the rest of the team in one of these areas. They do all seem to come with quite distinct personalities ;-)

We're a small enough team that we encourage learning the other roles, but each of these areas has a leader who defines our shop standards in that area.

Graphic Design is separate from front-end/theming, and typically our clients provide that.

Testing/QA could probably be another role -- but we're making that part of everybody's job description, to create test cases relevant to their areas (and then actually doing the testing is turning out to be a great way to train people new to Drupal in what can be done with it, where to find things, and generally the Drupal way...)

Each of these roles also has a growth/development path. We start out with people who have some basic skills in at least one area, but there's always a ton of things for each role to learn to really master that role.

For example:

  • Site Builder: starts with content types, taxonomy, views, and planning URL structures. Mid-level - features, views arguments, ubercart/commerce, simple rules, context. Advanced: Panels, rules, workflow, Maestro, messaging/notifications, SOLR, etc.
  • Themer: basic: HTML, CSS, grid-based designs. Midlevel: Sprites, responsive design, video/media. Advanced: UI/interaction design, animations, Facebook apps, custom widgets, mobile
  • Back-end: basic: Form API, Database API, Schema API, ability to debug, custom filters. Midlevel: Bulk node operations, data synchronization, Rules components, views handlers, Services, drush scripting. Advanced: node.js, dojo toolkit widgets/AMD, query altering, core development
  • System admin: basic: Linux shell, server management, drush, git, mysql/mariadb, apache/postfix, ec2/Cloud Servers, DNS, firewall rules, DOS mitigation, backup management. Midlevel: database indexing, slow queries (explain select), multi-server deployments, database replication, load balancing, disaster recovery planning, PCI compliance, monitoring setups. Advanced: diagnose hacked sites/servers, High availability setups, security planning, offline self-contained appliances, penetration testing, memcached/varnish, CDN setups, HIPAA documentation
    At least, that's how our current team is organized, and a partial list of the kinds of things each person does.

So yes, the main site building role in Drupal needs no PHP or programming knowledge whatsoever, and can get quite a lot done. Our back-end developers don't need CSS knowledge. Our front-end developers can get by with rudimentary PHP skills, as long as their CSS is strong. Finding a person who can do everything above well is probably not going to happen ;-)

Wow. Great post, very

greta_drupal's picture

Wow. Great post, very informative!

Thanks for the breakdown in task-based skill sets

tonychung's picture

That probably explains why I've had a hard time understanding the Drupal make up. I don't specialize in anything, but do a little bit of site structure, a little bit of client experience, a bit of backend hacking, and a bit of server programming. I'm a swiss army knife for the web.

Wow. Someone actually posted a job advertising for me:
http://www.sageinternet.com/company/careers/current_opportunities/swiss_...

Too bad it's not local.

Anecdotal

greta_drupal's picture

Here is why I suspect that employers are calling for every experience to include coding skills:

In my 3 years experience developing medium complex Drupal sites, I have found modules to do everything that I needed, for the most part. (Did hit a big wall on a Drupal 6 project last year.) But, now building a complex site in Drupal 7, and it is killing me. Pratically all -dev modules, it seems. The bugs and module shortcomings are frustrating and sooo time consuming.

Anecdote #2:

I have been working on one issue for weeks. Something that should be in core, IMO. A UI (even accessibility) nightmare. Have posted about it in many different related issue queues, g.d.o, Stack Exchange, and tried repeatedly to get assistance in various IRC channels. I reached out to 4 contrib mod developers, whose modules really need that functionality. Offered to pay for the patch, if I financially could do so. Only 1 responded, asking what my budget was. When I replied that there was a budget for this item (since it should exist anyway!), but asked him for quote, I never heard from him again.

That is the biggest Drupal problem. Developers (really everyone) don't want to be bothered with little projects. No money in it. So, if you are trying to use one of these contrib modules that falls short, you have to have a staff developer(s) to extend/fix it.

Of the few people who have ever even acknowledged my post on this topic, only 1 has tried to help resolve. He had needed similar functionality on a project, and when he couldn't find it, he had to tell the client that it wasn't feasible. He is new to Drupal module development, but as am I, interested to contribute to the community. He and I have spent hours together remotely working on a solution that could benefit others. We came up with a module patch, and he has presented it for consideration. It isn't the perfect solution for my needs. But, as I told him, this one patch now makes at least 4 other contrib modules that I tried (or am using) instantly better, with improved functionality -- and with no work required on the part of that module developer.

This lack of module/theme support is turning away Drupal clients or just killing them slowly.

Anecdote #3:

Just spoke with someone from a (very large state) organization, the other day. He mentioned that they don't use Drupal in their dept b/c they don't have the budget to keep a staff of programmers around. Said Drupal was too custom code intensive, and lacking support. So, they selected a different CMS that they felt gave them what they needed, as is.

Know what you mean

jsimonis's picture

I've looked at - or received in my email - a number of job postings and I too "abort" once I see custom module development. I don't write modules. I have taken courses in PHP and had to write my own CMS for my final project, but it is not what I love to do. I don't love writing software - I love designing and setting up sites.

I can create a design, take a design from Photoshop/Illustrator/PDF/etc. and make a theme, completely set up a site including views/panels/og/etc., bring in all the content, etc. Even though I do have to do some php work in the themes, I don't see that as the same as creating custom modules. Often times you can have a base theme that you create and then everything from then on is just html/css.

Basically I do everything but create custom modules. But as soon as I see someone wants that, I don't apply for their work.

It can take a considerable amount of time keeping up with everything you need to know to write custom modules. Instead I spend that time keeping up with new features I can add to the site, new ways of creating themes, changes in html/css, etc. I'd much rather be really good at all of the other things that create the bulk of a site.

My Thoughts

jeremyrperry's picture

Developers who code custom modules are called Back-end Developers who are often not very good at Front-end Development tasks such as CSS and theming. Are Front end Developers disappearing? Do all Drupal themers need to be custom module developers, too? I look forward to your comments.

I have seen a lot of this before in the jobs I've applied for. To me, it raises my suspicion level of this company as to if the know what they're really talking about, and/or being honest to the job applicant. I've too often seen tons of companies and people who "know enough to be dangerous" and like to throw around buzzwords because it makes them look smart. Just as worrisome is that the company is deliberately not being straightforward about all of the job requirements. To me, it is deceitful at best to do that and it shows the company is trying to be underpay and overwork the developer.

If the company wants a versatile dev who knows front and back-end, they should just say it, even if most day-to-day activity is going to be front-end. They also need to realize that getting to that level requires experience, and companies are reluctant at best to take on a junior level dev to let them grow into that. I personally think they're shooting themselves in the foot with this tactic, and it hurts the career progression of a developer.

What's really involved in module development?

Timon Davis's picture

**Edited Note: Looking at this again, I suppose this doesn't really directly answer the question, but if you can provide value in any one of these areas, that makes you a pretty strong team member for any shop that is into module development in my opinion. Front-end and back-end work are both critical to a high-quality module.

Truly competent module development requires a mixture of skills - these may be spread out over a few team members, however. Here are what I see as the critical components of successful module development:

  • Architectural Integrity

All of the work you'll ever do on a module, today and in the future, depends heavily where information lives and how it relates to other data structures. Before walking into any module development, it is critical to have a clear understanding of how your system gets the job done.

Use Case documentation is an absolute must-have, and Entity Relationship Diagrams are critical for any module tasked with data processing / refinement. Failure to take this step often leads to a lot of shrugging and guesswork, which feels fine moving forward, but is murder on your budget and on your energy levels as you try to pull everything together.

With a little bit of planning, you'll find yourself going down a highway with a clear map allowing you to say 'I am here', as opposed to wandering a forest and looking for familiar landmarks to help you get your bearings. Guess which method gets you to your destination faster...

  • Theme Layer Integration

You don't need to be a styling wizard to rock the theme layer. In fact, if you're doing it right, you should be able to take advantage of the tools provided by the theme layer which make it incredibly easy to provide output to the browser in a way that agrees with the site's core theme - no CSS, and often no HTML - is required to do this on basic displays. That being said, if your module provides any sort of HTML output whatsoever, it is very imporant that you understand how to utilize the incredible and extensible toolkit that is provided by the theme layer.

It takes a little bit of work to get used to the theme system - at first glance it seems convoulded and way too complicated. However, as you do more and more projects you will likely find yourself wishing you had more control over how output to the browser gets processed, and you will find that the theme layer has your back (especially in D7). In the meantime, you can get by with just hook_theme(), the theme() function and some custom functions that are in charge of producing output. Most importantly, use of the theme layer allows for separation of the site's logic and presentation, which is a must have for any quality-built software system.

If you're looking for advanced UIs, there is much more work there - not least of which has to do with your sever and your browser talking to eachother in a very effective way. Theme has tools to provide for the addition of javascript, so if you know how to make AJAX work already the tools provided by the theme layer can bridge the gap for you quite well.

  • Proper use of Drupal hooks and APIs

This is debatably the most technically demanding aspect of module development. There are probably 30-or-so essential functions that you should never leave home without. With a clear understanding of the Views, Schema, Forms, and Entity (or node in 6) APIs, you can accomplish 90% of anything you might be tasked with as a Drupal module developer.

The hook system, while it is intimidating because of its sheer size, is blissfully easy to comprehend as soon as you wrap your mind around it. Part of what makes drupal so extensible and great is the fact that interacting with it from the code perspective is simply dropping in code that gets called at an expected time with some expected inputs.

If you can master the APIs, and you can master hooks - you're going to be pretty hard to stop. And you might be suprised at how much work it doesn't take to get you there.

  • Integration with Drupal and the tools it provides

Finally, you're going to be much better off if you can identify the pre-existing tools which will get the hard work done for you. As a grand example if you're trying to build an eCommerce suite that allows you to purchase memberships, you're not going to want to build a custom eCommerce system that will allow you to do this. Instead, you're going to be much better off downloading Drupal Commerce and then writing a sub-module which allows for your custom handling.

The reasons for utilizing contrib modules are two-fold: 1) It is much, much faster to utilize tools already developed and at the ready 2) These ready-made modules have usually been extensively tested and, in all reality, will work much better than your version of the same module - at least until your solution has been through hundreds hours of testing and development.

Naturally, not every pre-made solution fits the way you need it to. Knowing when to go with off-the-shelf modules, and when to go custom, is a big part of being an effective module developer.


If you have all of these pieces in place, there is a good chance that you (or you and your team) have a great shot at making something worth while. While custom modules are not going to be the fastest or easiest solution for everything, module development gives you the control to do practically anything.

It would be nice to get some

jnicola's picture

It would be nice to get some official statements on what constitutes what skillset to help both employers and employees. Employers would get better results, and employees won't look silly when they go into an interview and say they know back end development when all they've done is setup a few basic views...

Jesse Nicola -- Shredical six different ways to Sunday! -- My Portfolio

Skill sets

jdwalling's picture

Here are some skill sets
http://groups.drupal.org/node/67763
http://groups.drupal.org/node/172434
https://cacoo.com/diagrams/Fu6NuballS0GgW0d#9B601

An interactive graphic skill set with user added details could be a good communication tool for hiring and self promotion. It sounds like an excellent Drupal distro. ;-)

Interactive graphics

tonychung's picture

OOH. I love doing interactive graphics. At my job I get to build toys.

Just wondering. . .

hatcat's picture

Although I am enjoying this discussion, I'm not sure why I am receiving it via my e-mail. I am not subscribed to this group. I'm new to the groups and would appreciate knowing how to stop receiving the e-mails. I've tried to stop them thru my account notification settings but must not be doing it right. Any suggestions?

Just one of those drops

xolomon's picture

Thus we stumble unto the other side of the magical drop... Something must be misconfigured. We'll just have to wait it out whilst our inboxes flood, or take this as a glorious opportunity to contribute back.

Email notifications

sreynen's picture

hatcat, this post was added to the Drupalchix group, and you are a member of that group, so that's why you're getting email notifications. You should be able to manage your notifications under the "notifications" tab on your user page, which is linked from the end of every email. The groups.drupal.org issue queue is the best place to get support:

http://drupal.org/project/groupsdrupalorg

Thx

hatcat's picture

Thx, very helpful.

Freelance matchs

jdwalling's picture

@katy5289 If you are looking for contract work, you can complement your skills with other freelancers case-by-case or form an LLC if you find someone with a good working relationship. You can work as a team or individually with separate business licenses. I know a few freelancers who operate that way.

Site builder

Katrina B's picture

This discussion has been very helpful to me; I hope it (the discussion) continues.

My technical title at my current job is "Front-end developer" -- but that turns out to be confusing for a lot of people who think I'm a programmer when I'm not.

I have been trying to learn PHP and JavaScript/jQuery, but I have not yet gotten past the basic levels. I have learned enough to be able to plug snippets (that I find on Drupal.org or elsewhere) in to .tpl.php files or template.php; I can also take a snippet designed for a custom module and create the custom module from the snippet. But I can't write PHP (or JavaScript/jQuery) on my own.

I learned Drupal on my own while designing/building a website for a daily newspaper (in less than three months). Then I spent a year maintaining/updating the site as webmaster. Then I moved in to my current position with a website design/marketing firm.

In my current position, I'm really more of a site builder. Someone else designs the wireframes and comps; then I'm handed a "blank" devel site on which to build a website for a client. I install and configure modules; I create content types, fields, Views, and blocks. As changes come in from the client -- or others at the company (I'm a telecommuter, so I'm not in the office with everyone) -- I make changes to content types, fields, Views, and blocks.

I spent several years in HTML and CSS before discovering Drupal, so I can do quite a bit of designing and theming, if needed.

I also have several years of experiencing teaching workshops (in Excel, PowerPoint, Photoshop, Illustrator, InDesign, QuarkXPress, and HTML/CSS) and community-college courses on computers ("Introduction to Computers," "Desktop Publishing I," "Multimedia Design") -- and I really enjoy teaching and training -- so I am sometimes called upon to write and design training materials for clients and/or to conduct trainings with clients.

And I have a B.A. in English -- with a concentration in writing -- so I can nitpick the grammar, spelling, and punctuation of text on a website (or any other materials), if asked.

I've been using Drupal for about two-and-a-half years -- I feel like there's so much more I could be doing, and I'd like to find a job where I could continue to expand and deepen my Drupal skills.

But like many others, I'm seeing a lot of job postings where employers seem to be looking for someone with more technical skills. I feel I have a lot to offer -- in Drupal, in the user experience, in training, in communication -- but trying to find a job that's a good fit is proving to be very challenging!

Katrina
Site builder, writer, trainer, graphic designer

developer switch

marcrobinsone's picture

@Katrina, I'm pretty sure the Drupal industry has lots to offer with those credentials!

If I might add, there are plenty of brewing micro-industries in the Drupalsphere.

Like for example - testing + quality assurance is something that no one expected to boom. Even today, it's hard to grasp how browser-testing has now become more intricate... especially when dealing with the "mobile" trend. The module & theme devs are forced to add testers to their speed-dial list!

Talent shortage is also becoming a serious problem. Scarier: even hired & established Drupal developers switch from one agency/company to another. Some of them even terminate their employment in less than a year to switch to another company (talking about you... Commerce Guys hehe j/k - love you!).

I guess my bottom-line is... passion (huge interest) is a factor to a Drupal developer's success other than technical skills. Sometimes ... those soft-skills are more valuable in the real world.

greta_drupal's picture

@Katrina, I'm pretty sure the Drupal industry has lots to offer with those credentials! ... Sometimes those soft-skills are more valuable in the real world.

You say that in a delightfully encouraging way, but where is the evidence? Seriously, I'd like more encouragement.

I scour CareerBuilder.com and other job sites, and get Drupal jobs notifications regularly. I just Googled "jobs Drupal site builder" and not seeing much from ever.

And, I don't see that encouragement in the Drupal community (Drupal.org or g.d.o.) -- generally, quite the opposite. But, I wanna believe (and promote that), truly I do.

I, too, walk away when I

Hanpersand's picture

I, too, walk away when I encounter job listings where "module developers" are being sought. Many of those ads are from firms that do want module developers. But I've had many clients (nonprofit orgs) who start out thinking they need full-on module developers to build their sites because--as many have pointed out--they're landing on buzz words to ensure they get what they think they need, because they don't yet understand what they need.

I've been freelance consulting in Drupal for two-and-a-half years, and I've had some success doing the following two things.

  1. Collaborators: I find others with whom to collaborate who like to do/excel at the things I don't like to do (see below). I don't like to work alone, so this is ideal for me.

  2. Focusing on finding the best matches between my skills and clients/projects: I tend to work with small to medium-sized nonprofit orgs on budgets with fairly straightforward needs. For most of these orgs, custom module development or very advanced Drupal tweakery is not only too expensive, it's can be very unwise. Most of these orgs simply need a modern CMS, but their needs are just a bit too complex for WordPress. What they need is clean, close-to-core, well-vetted-module Drupal implementation. This means they need an intelligent human person to help them navigate best practices of Drupal/CMS/open-source/nonprofit website building (communicating with an org to come up with a flexible, sustainable Drupal implementation plan to serve their needs is a skill in itself). If a potential client wants something too complex for my skills, I bring on another person to do that part, or I refer them to a larger shop. If an org is just getting to know Drupal, I will often give away a free half-hour or so to help educate them about Drupal, and learn about them myself so I can make a good referral if I or someone on my immediate team is not the best fit.

@Katrina my skill set sounds a bit similar to yours, though maybe a little heavier in code-comfort. I have a background in writing, but I spent over 10 years doing a combination of HTML/CSS CMS template coding and grant writing in non-profit orgs (as staff). I ended up with a lot of front-end code and site building skills: HTML, CSS, implementing jQuery and Javascript, and heavy use of Views, Panels, Context, whatever else. Over the years, I did teach myself how to implement PHP in templates/theme files when needed. (I've been working in Drupal for 6 years, and was in other open source CMSs before that.) I also have a lot of understanding about how nonprofits work, what their web needs are, etc. As I said, I definitely use that in my work.

What I don't enjoy and don't do are: designing/producing Photoshop comps, IA and data modeling, server administration, back-end data migration, and module patching and custom development. So it's people with those skills that I look to collaborate with.

Frontend Drupal is different

mpgeek's picture

When I came to drupal, i did so as a so-called frontend'er. As i gained experience i found that to do things the most efficient way, or more generally, "The Drupal Way", you will start digging into the API and begin to do what developers do.

Say you are theming a custom feature that involves a new content type. You think to yourself "I really need a custom field for this content type." You read the API documentation, you look at examples, you construct a custom field module. You are "developing". Once the "themer" starts thinking about the performance or security of any given line of PHP, that themer has crossed over into dev-land.

In my opinion, you can never stay "on the frontend" when using Drupal, so the Drupal front-end developer is a slightly different animal than the run-of-the-mill front end developer. Meanwhile, learning those skills does nothing but good for your career.

To answer the question in the title of this thread, IMO, Drupal front-end developers do not NEED to do any custom module work, but those that can will get the call.

Job Listings vs Reality

sarah_p's picture

Of course job listings ask for the moon. How many of the developer rockstars actually have CS degrees? Like most careers these days, chutzpah and the ability to learn will take you far.

The reality of Drupal is that it helps to know the APIs, and to know how to code even just a little. In my experience to stay on top of tech you constantly have to learn new things anyway. I wouldn't consider myself a module developer. I would consider myself a hardcore themer.

Don't shy away from code because it's unfamiliar it's easier than you think, and can actually be addictive. Sams "Teach Yourself PHP in 10 MIns" is also a good start to understanding PHP in general and it's a simple read. The Definitive Guide to Drupal 7, and Pro Drupal 7 are also helpful in the the theming/coding arenas.

If you can do a little bit of Drupal development you shouldn't have too much trouble finding a job.

I've noticed the same thing.

megan_m's picture

I've noticed the same thing. I think it depends on what they mean by "custom module development". I have a similar skillset to yours and am primarily a front-end developer with design skills. I have picked up some PHP over the years, though, and can put together a custom module for small tasks if needed. If that's the sort of thing they mean, then fine. Minor custom modules aren't that different from theme functions anyway.

However, if they're expecting someone to be able to do full-fledged backend development along with good front-end development, then that's getting to be unreasonable. Especially when the primary task for the job is front-end development. There have also been a lot of recent advancements in front-end dev. with responsive design, CSS 3 and HTML 5 that make it more complex.

The thing that really baffles me about job listings, though, is that there is almost no demand for front-end developers who can do some design work. It seems like most shops have all the designs completely done in Photoshop and then themed separately. Expensive! If anything they expect you to be more on the dev. side than on the design side.

I've never had much luck with those job ads anyway. I'm not sure if people just get a flood of responses, or if they're looking for something I'm not (e.g. cheap, local).

Jobs and Reality

Cholly's picture

I see this too, back-front end. I've been working exclusively with Drupal for 3-4 years as a site builder. I am about a 50/50 split. Even with this skill set, I can't get enough(any) work unless I write full site proposals.

@Megan - I always liked design also but it is so speculative from the client's eye. Nothing more fun than slicing previously well executed design elements into a theme.

I'm not sure what the community is saying when they claim there is not enough talent. Seems flooded with folks who are all rock stars and ninjas as most of the job reqs. want. Most recently I'm seeing the reqs. for LAMP admins along with the Drupal skills.

What is reality in this Drupal marketplace? For newcomers, I recommend concentrating on good php chops. No shortage of work there.

Hey All, Think it's funny

gbernier's picture

Hey All,

Think it's funny timing to see this posting, http://groups.drupal.org/node/238723, incase a few of you didn't see it the jobs do exist :)

Cheers,
Gene Bernier

wondered if the poster has

greta_drupal's picture

Yeah, I saw it too and wondered if the poster has been reading this thread. :-)

Its definitely not a

claymarshall's picture

Its definitely not a coincidence. I commented within this thread last weekend and was very interested in the discussion. It was very close to the conversations we have been having here in the office about the role of the front-end developer. I indicated at that time that we would be rethinking our upcoming job posting for a front-end developer.

I have been wavering on the telecommuting and have reposted the position with telecommuting allowed. We definitely prefer to have the ability to have the occasional face to face meeting time, but the primary reason we posted the position without allowing telecommuting is that we receive too many responses from people looking for contract work. We want to hire a full-time employee who wants to grow with us as our business grows.

That's good to know, Gene.

katy5289's picture

That's good to know, Gene. Thanks for posting that. I'm looking for telecommuting work.

Thank you to everyone who responded and left comments. I've really enjoyed reading them and learning about the wonderful talent we have in Drupal Front-end Developers and Themers.

I have met a couple Developers whose job description is Site Builder, but I don't recall seeing any job ads for that position. Perhaps Drupal Developer includes Site Builder? I like the title Site Architect better :-)

We had so much response, this discussion made "Top Content of the Week" on Drupal.org. Awesome!

Katy :-)
www.seascapewebdesign.com
Drupal Front-end Developer/Themer and Site Architect
Available for Hire