<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Luis Serrano 🇪🇺</title>
    <description>The latest articles on DEV Community by Luis Serrano 🇪🇺 (@luisnomad).</description>
    <link>https://dev.to/luisnomad</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F195829%2F4c21121b-c3dd-4dfa-b2da-6b341c3b6829.jpg</url>
      <title>DEV Community: Luis Serrano 🇪🇺</title>
      <link>https://dev.to/luisnomad</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/luisnomad"/>
    <language>en</language>
    <item>
      <title>(Most) IT Recruiters suck. Here's how to fix it.</title>
      <dc:creator>Luis Serrano 🇪🇺</dc:creator>
      <pubDate>Thu, 02 Jan 2020 12:25:05 +0000</pubDate>
      <link>https://dev.to/luisnomad/most-it-recruiters-suck-here-s-how-to-fix-it-3e95</link>
      <guid>https://dev.to/luisnomad/most-it-recruiters-suck-here-s-how-to-fix-it-3e95</guid>
      <description>&lt;p&gt;Ask techies: How's jobhunting, nowadays?&lt;/p&gt;

&lt;p&gt;The answer is: it's &lt;em&gt;HORRIBLE&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;I am sorry but that's the most accurate word to describe it. It's utterly terrible, disappointing, and frustrating. Considering we developers and technical people are such a juicy prize, we're treated like shit, both by recruiters and companies. It's not my opinion, ask any developer you know. They will agree in less than two seconds, no need to think about the answer.&lt;/p&gt;

&lt;p&gt;But why?&lt;/p&gt;

&lt;p&gt;I am going to tell you my opinion. The fact that dealing with interviews and recruiters is crap is not debatable. That is a fact. Now, the reasons for this situation are open to discussion and what I am saying here is my point of view, purely personal, based on my own experience.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where are the professional, trained recruiters?
&lt;/h2&gt;

&lt;p&gt;It looks to me like nowadays anyone can call themselves "recruiters". Not so long ago, recruiters were people with specialized studies, even psychology degrees. People who were trained to understand people. What happened to that? There were proper formalities, and a candidate was informed of the status of the process. There was respect.&lt;/p&gt;

&lt;p&gt;Now, we are contacted by random people offering some positions that might or might not fit our profile. We answer that message telling them we're interested, and we might or might not get a reply. If we get a reply, it's like it was us who started begging for that job, because we have to constantly ping the recruiter to know what's going on. That is, of course, if the conversation doesn't abruptly die (from their side).&lt;/p&gt;

&lt;h2&gt;
  
  
  Secrecy about the company and job conditions
&lt;/h2&gt;

&lt;p&gt;Maybe we're offered an interview with a ghost company because they don't want to give away the name or any detail. We probably don't know about the salary range either. Recruiters ask us, and we have to tell them about our expectations. That's no confirmation that we'll get anything close to that. I've been offered way less than expected AFTER all the interviews, because you know, "that's the average for the position in my city".&lt;/p&gt;

&lt;p&gt;How can we prepare for interviews or do proper filtering of where we apply to, if we don't know all the details? If a recruiter wants to know everything about me, I have to tell them or I lose my chance. It should be reciprocal.&lt;/p&gt;

&lt;h2&gt;
  
  
  No, really, read my profile
&lt;/h2&gt;

&lt;p&gt;If you want to understand my profile, the best way to do it is to read it in the first place. I've been told things like "oh, you seem to be a bit unstable, there's a lot of jobs in your CV". No Mister, I have been freelancing and I've had a lot of customers. That, in my dictionary, is called a success, not instability.&lt;/p&gt;

&lt;p&gt;Also, please, just because I did some Java a million years ago doesn't mean I am a fit in that Java position you're managing today. Context, my friend. Also, most of us evolve, we started doing something, and we ended up doing something else. Or we specialized in something, who knows. So yes, consider our past, but to see if we're what you're looking for, check what we're doing now! Best clue ever, for free.&lt;/p&gt;

&lt;h2&gt;
  
  
  Technical Interviews are bullshit
&lt;/h2&gt;

&lt;p&gt;I've been in technical interviews with two managers and one engineer, and I've been asked questions that the engineer probably didn't know either. It's like they wanted to prove what I didn't know, instead of what I know and what I can do for the team and the company. Funny thing is, the last time I was rejected for not answering something correctly, the engineer had to read the correct answer from the script to check if I was correct. He had some random "tricky javascript questions" in front of him. He asked me something he did not know, and they rejected me for not being "Senior enough". Come on...!&lt;/p&gt;

&lt;p&gt;I am totally open to discussing technical things in interviews, but spending 1 day coding a full website to get a position, no thanks. Especially if I don't know what am I fighting for. Tell me what the reward is, the full conditions list, and I'll decide if I want to do that long technical challenge you sent me.&lt;/p&gt;

&lt;p&gt;If each screening process has a long technical challenge, imagine being involved in two or three. I get that companies need to vet people -if a technical challenge is their way to do it, so be it, but be reasonable. And please, don't expect people to know things by heart, especially if the engineer asking the questions doesn't know the answer either. That gives a really poor impression to candidates.&lt;/p&gt;

&lt;h2&gt;
  
  
  No, developers should not be recruiters
&lt;/h2&gt;

&lt;p&gt;Please, put that engineer back to their computer. Developers shouldn't be allowed near a candidate, ever. Unless they have some basic people skills and empathy, they should stay away from recruitment processes completely. It's ok for them to validate technical tests, but they shouldn't be deciding anything. Maybe developers who lead teams are an exception. They made it there because they're good both with code and with people.&lt;/p&gt;

&lt;p&gt;Very often, developers doing recruitment make the interview a competition, a confrontation of opinionated approaches (also known as DOGMAS). Some even fear hiring someone better, more experienced, who might eventually replace them, get more money or simply be more popular. It could end up being a fight of egos. A chance to show bosses how good they are compared to anyone who shows at the door. No. Leave them out, unless you've vetted those developers first, and you're sure they can offer a fair chance to candidates.&lt;/p&gt;

&lt;p&gt;Use this checklist to make sure that developers are fit to do recruiting:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;can they do what they expect candidates to do?&lt;/li&gt;
&lt;li&gt;Do they know the answer to the questions they will ask?&lt;/li&gt;
&lt;li&gt;Are they good team players?&lt;/li&gt;
&lt;li&gt;Are they good with communication?&lt;/li&gt;
&lt;li&gt;Can they sell the company and the project?&lt;/li&gt;
&lt;li&gt;Are they positive?&lt;/li&gt;
&lt;li&gt;Are they happy in the company?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you can answer "YES" to "ALL", then go ahead and bring the developer into the process. Otherwise, restrict the scope of that participation to technical checking, away from the candidate. And if possible, ask for feedback to more than one dev, to avoid personal bias over legit reasons to discard someone.&lt;/p&gt;

&lt;h2&gt;
  
  
  Respect &amp;amp; Professionalism
&lt;/h2&gt;

&lt;p&gt;I get that recruiters have a job to do and that they're only paid if they find the right people. Copying and pasting a job offer mindlessly &amp;amp; ruthlessly to everyone fitting your "search keywords" and not properly managing answers is not the way to go. Here are some steps I suggest you follow to be a professional &amp;amp; respectful recruiter:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Collect a small number of profiles you've reviewed. A number of &lt;em&gt;people&lt;/em&gt; you can manage.&lt;/li&gt;
&lt;li&gt;Shortlist the best ones.&lt;/li&gt;
&lt;li&gt;Send them a personalized message.&lt;/li&gt;
&lt;li&gt;If they reply positively, proceed with their candidacy. The ones who did not respond or showed no interest, save them for the next opportunity. You've shortlisted them for a reason. Don't let that work go to waste.&lt;/li&gt;
&lt;li&gt;Do you expect full disclosure from candidates? Well, lead by example. Provide all the details about the job opportunity. If you don't know all the details, why are you contacting candidates already? Get the answers first!&lt;/li&gt;
&lt;li&gt;What? You don't want to give away the name of the company in case the candidate bypasses you and you're not paid? Hey... we're not like that. Why would we do that anyway? What do we gain? That would make us look shady. Don't worry, we're not stealing from you.&lt;/li&gt;
&lt;li&gt;Job hunting is an emotional &amp;amp; energy draining experience. And chances are we're in more than one screening process at once. So keep in mind: it's harder for us than it is for you.&lt;/li&gt;
&lt;li&gt;Try to watch any technical person on the company's side involved in the process. If there are developers in the decision-making circle, that's potentially bad news (for the reasons explained above)&lt;/li&gt;
&lt;li&gt;Team up with us! Look, we might hate interviewing, but we have to do it to get jobs. So let's be friends, let's walk the path to success together, because your success and our success mean basically the same. We get the position, you're paid. Help us and you'll be helping yourself.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I don't mean to offend anyone or to pretend I know everything cause I don't. But again, recruiting is getting ridiculous and really bad according to... well, everyone I know, in several countries both in Europe and North America. I don't think I am wrong in this regard.&lt;/p&gt;

&lt;p&gt;If you, recruiter, feel identified with the bad practices I've described, let me tell you this: you suck. But the good news is, you can get better. We, the candidates, learn from rejection (or we should). You can learn too, and shine.&lt;/p&gt;

&lt;p&gt;Think about it.&lt;/p&gt;

</description>
      <category>recruiters</category>
      <category>it</category>
      <category>hr</category>
      <category>jobhunting</category>
    </item>
    <item>
      <title>Wordpress: Divi Builder, we Developers need more documentation</title>
      <dc:creator>Luis Serrano 🇪🇺</dc:creator>
      <pubDate>Wed, 04 Dec 2019 15:45:31 +0000</pubDate>
      <link>https://dev.to/luisnomad/wordpress-divi-builder-we-developers-need-more-documentation-2307</link>
      <guid>https://dev.to/luisnomad/wordpress-divi-builder-we-developers-need-more-documentation-2307</guid>
      <description>&lt;p&gt;I've been developing software &amp;amp; websites since 1997, and I still have the imposter syndrome. Plus I don't consider myself a genius, I just enjoy what I do. More importantly, I seem to have some people skills not common amongst developers, and that often ends up with me being appointed the team lead, mentor, spokesperson or otherwise the person who's in the spotlight. I have to say I like that part even more than programming because I actually like people and I enjoy talking to them. I am not one of those devs who put on some headphones and start typing code, and refuse to interact with the real world cause they're "in the zone". &lt;/p&gt;

&lt;p&gt;Why am I saying all this, why I do talk about myself when I was supposed to discuss Divi here? Bear with me for a sec, I'll get there right now.&lt;/p&gt;

&lt;p&gt;So every now and then I get excited about some new framework or technology, and recently I discovered Divi. A friend of mine told me about it and he sent me a demo so I could play with it. I am going through a process where, if I can avoid coding, I avoid it. I don't reinvent the wheel anymore, and when customers want me to create a "nice looking website", I feel like I am doing the same things again and again. Divi seemed to be a tool that would accelerate the process of creating nice standard websites with everything everyone wants... the freaking same structure:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Header (optionally sticky) with a logo and a hamburger menu for mobile. So original.&lt;/li&gt;
&lt;li&gt;A (parallax?) hero box/slider with some nice images (stock, obviously) and some marketing statement. Groundbreaking.&lt;/li&gt;
&lt;li&gt;Optional: some motto or famous quotes using huge font size, possibly italic style.&lt;/li&gt;
&lt;li&gt;A grid with products/portfolio items.&lt;/li&gt;
&lt;li&gt;Pictures of the people in their team.&lt;/li&gt;
&lt;li&gt;Contact information (with a map)&lt;/li&gt;
&lt;li&gt;A footer with legal links.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Does that ring a bell? &lt;/p&gt;

&lt;p&gt;Well, I am sick and tired of coding that myself, so first I started buying &amp;amp; customizing commercial templates, and now I am into Divi.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.elegantthemes.com/gallery/divi/"&gt;Divi Builder by Elegant Themes&lt;/a&gt; is "one of the most popular Visual Builders for WordPress". I believe it because I am involved in the community and the number of resources is outstanding. Resources in terms of templates, layouts, tips, Facebook pages, etc etc. I did a demo project and I decided to give it a go. I bought the lifetime license right away! Then I built two websites with it, using pre-made layouts as an "inspiration", which I modified with my own color schemes, pictures, font choices, etc. But in the end, I was doing the same I was before, just... much faster. And without writing a line of code! Yay!&lt;/p&gt;

&lt;p&gt;Soon after I started using Divi, they launched a new major version, Divi 4, with WooCommerce support. I was totally crazy with happiness because it happened just when I was starting building an e-commerce site with WooCommerce. Divi 4 includes customization options for &lt;em&gt;some&lt;/em&gt; WooCommerce built-in features like the Product Page, Product Archive, etc. It doesn't cover some very important pages like Checkout, Cart, Profile/Account though. And it's not compatible with WooCommerce official themes and plugins.&lt;/p&gt;

&lt;p&gt;This is where I started thinking... maybe I can create those modules myself? There are dozens of big websites selling modules for Divi, so it's actually good business and there's people doing it. I could too! First I would create modules for myself, but why not offering premium modules to others? &lt;/p&gt;

&lt;p&gt;So I went to the &lt;a href="https://www.elegantthemes.com/documentation/developers/"&gt;Documentation section&lt;/a&gt; of the site and I read everything. It didn't take long. Maybe 20 minutes. Because there's not much there. And even worse: not everything I needed was covered there. &lt;/p&gt;

&lt;p&gt;I went to check the tool they have on GitHub, a script called &lt;a href="https://github.com/elegantthemes/create-divi-extension"&gt;create-divi-extension&lt;/a&gt;. It's been &lt;em&gt;abandoned&lt;/em&gt; for two years now except some bug fixes 7 months ago. Okay, not a good start. &lt;/p&gt;

&lt;p&gt;Anyway, &lt;em&gt;let's do this&lt;/em&gt;, I said! &lt;/p&gt;

&lt;p&gt;Well, I ended up digging into the Divi Builder source code to find out how to debug my own module. In case you're wondering yourself, you need to do this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/elegantthemes/create-divi-extension/issues/5#issuecomment-383207300"&gt;https://github.com/elegantthemes/create-divi-extension/issues/5#issuecomment-383207300&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And for that to work, you need to define this global variable in your module's loader file:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;define( 'XXXX_DEBUG', true );&lt;/code&gt;`&lt;/p&gt;

&lt;p&gt;Where &lt;code&gt;XXXX&lt;/code&gt; is the prefix of your extension. You're welcome. I had to dig into the source code to get that.&lt;/p&gt;

&lt;p&gt;Anyway, &lt;code&gt;create-divi-extension&lt;/code&gt; is based on &lt;code&gt;create-react-app&lt;/code&gt;, because the builder front-end is React (yay!). But bummer, it does not support SASS. And if you want to add support yourself, good look. Ejecting (&lt;code&gt;yarn eject&lt;/code&gt;) totally destroys the project, so you don't have access to webpack's configuration. I ended up forking &lt;em&gt;create-divi-extension&lt;/em&gt; on GitHub, then I updated a bunch of things but I just got it partially working and I gave up. Why? Because it's not right. I bought Divi to avoid coding, but I thought coding some custom modules would give me some competitive advantage. And it looked like fun, why not? But...&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;I had to dig into code to find out how to set up my development/debug environment. &lt;/li&gt;
&lt;li&gt;I was hacking the provided tool to create a simple boilerplate.&lt;/li&gt;
&lt;li&gt;The prospect after that wasn't much promising because I already can create a module but the myriad possibilities available to native Modules aren't documented. Like dynamic values, how do I apply customizable styles to my modules... the basics!&lt;/li&gt;
&lt;li&gt;Modules are React in their "frontend builder" version, but after that, it's just plain Javascript with jQuery as your only tool. Why? &lt;/li&gt;
&lt;li&gt;They don't provide/suggest a templating utility in the PHP side, like, I don't know, &lt;a href="https://github.com/nicmart/StringTemplate"&gt;string-template&lt;/a&gt; for example?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The only way to really learn how to write powerful modules is:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Have a lot of free time to dig into the code, or...&lt;/li&gt;
&lt;li&gt;Buy a module pack and "reverse-engineer" those modules, but that would be the "production build" only... not &lt;em&gt;all&lt;/em&gt; source code.&lt;/li&gt;
&lt;li&gt;Buy some course (starting prize 199$ at Udemy.com)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I think Elegant Themes should really improve their documentation, keep their tools updated, and help coders becoming &lt;em&gt;Divi Developers&lt;/em&gt;. It'd be good for their business because that would create a stable and solid userbase, and it'd be good for those developers because they could extend Divi beyond the usual, standard stuff.&lt;/p&gt;

</description>
      <category>divi</category>
      <category>wordpress</category>
      <category>module</category>
      <category>development</category>
    </item>
  </channel>
</rss>
