New Resume and portfolio feedback

Hey all,

I had posted my resume here before, but it didn’t appear to appeal well. So I’ve spent a bit reworking it and putting together a portfolio site. I would appreciate any feedback or criticism on either as I will soon be using them in my job search.

Thanks!

Site:
http://www.jordanmarshdev.com/

Resume:

2 Likes

Previous post was just resume, does that still count?

So, we have this issue about what it is you’re communicating. I’m not a hiring manager, but if you read the critiques of prior people posting their resume and/or portfolio, I can sum the similarities briefly:

Resume:
Drop the fancy design, go for plain-text machine-readable. You’re not a graphic designer, so there is no need.

Portfolio:
As said before, it depends on whether you’re a back-end, front-end, or full-stack guy. You said you were a back-end guy in a previous post, but in your resume you say you specialize in:

web technologies including HTML5, CSS3, SCSS, Bootstrap, JavaScript, React, Git, and GitHub.

(Except Git/Github, which is neither front nor back, these are all front-end technologies.)

It looks like you opted for the template, which would be fine for a back end guy, but:

Literally no backend technologies or certificates listed. And the source code says <!--Template is licensed under CC BY 3.0. -->. Which would lead me to ask: if all you can do is front-end, why didn’t you do this yourself? Given the difference in polish between the portfolio and the projects within, I’d be surprised if someone didn’t look at the source code like I did.

My advice would be: If you have back-end projects, present them, and change the thrust of your sales pitch of you, the commodity. If you don’t, use the concepts in the portfolio, but make one yourself. You can do it. You have the technologies :slight_smile:

Edit:
I noticed spelling errors as I finished scrolling. Search and destroy:

Built uding ReactJS

Increased department productivity by over 50% greatly reducing overtime cost
needs a comma after “50%”

Thanks for the feedback!

I have never stated I was a back-end developer. In the other post I said I like building apps, not designing websites. While I am confident I could recreate a template or turn a PSD design into a template, I am not a designer able to put it all together on my own, which is why i went for the template.

Thanks for the recommendations and good catches on the spelling errors!

There isn’t that much wrong with the portfolio itself, but you have some huge gaps in your projects. I’d work on them before you show them to a potential employer.

  1. Memory game
  • not much feedback besides showing score at the top. You could show how many pairs are left, for example.
  • feels very slow and unresponsive at times, that’s due to the “reset time” after you choose 2 wrong cards and before you can choose another card. Lack of any feedback on that part also doesn’t help. Look into UX.
  • could add some difficulty modifiers and give the player only X number of guesses.
  • there is no way of resetting the game once you start it, give the player a button to go back to the previous page or to reset the game.
  1. Store
  • design is really meh, but I know you’re really not interested in design so I’ll just leave it at that.
  • the things like “best value”, “most popular” etc. shouldn’t be available to the user who adds tvs to the list. Most of them should be applied automatically based on price, “most popular” should be skipped or done from admin menu, which you don’t have because of no back-end.
  • You could add a “dummy admin dashboard” which would be accessible to any visitor and they could modify the list of products and select which one is most popular manually. That’s the least you should do if you don’t have a back-end.
  • No local-storage. I added an item and it was lost after the refresh.
  • There are stars for ratings but I can’t vote…
  • There is a “cart” page, but no “checkout” page. Add that, create a multi-step form and put it in there, add some form-validation, maybe fetch visitor’s location and put it into the “location” input. You can look into IPInfo API, they have a free tier.
  • list of products on main page don’t look great on mobiles, they stay at fixed width. Here is a screen: http://prntscr.com/lcpy1e

I haven’t checked the calculator.

Just feels like you’ve rushed these projects and didn’t think too much into what could make them better and beyond basic. Unless you have some great soft skills you’re not doing yourself any favor.

I appreciate the feedback, but I wasn’t really sure how far to go. Obviously with these projects I can add more and more. With the memory game, I could add high scores, more animations, etc.

With the ecommerce I could add more CMS features, individual item pages, etc. But being a portfolio piece and not an ongoing project I didn’t know how far to take it and where to call it stops to show what I can do.

I’d say there are lots of things that can be done without going overboard for a portfolio piece. Remember that you’re not doing any back-end so your workload is cut by a considerable amount, put that time into use, do some cool stuff. The things I listed I believe are basics of what should be included in an e-commerce app.

Also, which I forgot to mention, the ecommerce app also doesn’t have a single-product descriptions, I’d add that too, even with a lorem ipsum description.

1 Like

I agree with Gigusek. Porfolio design. The projects are lackluster. You put ecommerce app, it has to be full. Database/ professional looking front end/accounts / payment …

I would never link a calculator or a memory game, it’s far too basic. Content > design for the porfolio

I’m not sure I agree that a memory game is far too basic. It took probably 40 hours of work over several days. In fact when looking for portfolio projects this was one that was highly recommended by multiple people.

As for the ecommerce app I’ll definitely add more to it, but I don’t know the back end (accounts, payments, etc) and since I’m going for front-end right now don’t think those will be necessary, though I do hope to add local storage and more functionality.

Remove the design on the resume, save the space for more text.

Smaller name, contact info all in 1 line, again save the space for more important things.

Remove Free Code Camp from education, redundant since you are listing your certificates. Use less space on the certificates, too, but do list those hours.

Use the extra space to list your projects, a description and the tech used, also important features.

On your portfolio, if you don’t want to beef up the project complexity or visual design, then you have to sell them on your process and system design. Meaning not a simple wall of text for description. A post with diagram, bullet points, and flow. Make them understand the reasoning and process behind even project that may seem trivial

Hey Jordan,

Resume:
Get rid of the excess design. Focus on the important stuff like the technologies you can use, work experience and of course the projects.

Website:
Looks fairly professional. I’d add some navigation so if I’m a potential employer, I can skip to your projects or whatever part I want to see first without having to scroll through everything.

Your Projects:
In contrast to your professional looking website & resume, your projects look unprofessional. On the ‘About’ portion of the website, you say you have “passion for creating applications,” that passion needs to come through in your projects. If you have other applications that you’ve made, then use them.

In a post you say these are just portfolio pieces, but they have to be professional looking, which does means focusing on the visual user design aspect as much as the actual coding.

Hey, Jordan!

I’d have to say that I genuinely think your work is quite impressive. Your front-end web development coding and design skills are thorough and well-rounded. I think you’ll find it a useful tool in walking you into many interviews! Good Luck!

2 Likes

I quite like the portfolio, it looks very modern, professional and the animations are on point. The only thing I would consider is that perhaps your projects should be wrapped in a container, this way people can have a quick view of all the projects you’ve worked on. Remember that with your portfolio you should be aiming recruiters, these people usually don’t have time to go by one project at a time. When a recruiter visits your site they would like to see everything and they want to do it fast.

You have an image containing the entire width of the screen, then you have a text down below. If you are going to use the entire width of the screen with the project image, you may as well place the text on top of it on a side when the image is hovered. But I would highly recommend you to have a gallery instead.

Regarding the side projects, as mentioned by others, you need to work on them. The portfolio looks nice and professional, then you see these projects and you have to wonder if any of that was done by the same person, it looks like you just lost your “passion”. Like you finished your portfolio and then threw a bunch of things in it.

I would focus on the e-commerce app, it has a lot of potential and it’s a real world app and that’s exactly what recruiters want to see. Build a nice UI, if you are not a designer that’s ok, go to dribble or monster templates and get inspiration from one of those sites. Really there out tons of sites out there from where you can pick up a design.

Get rid of the calculator, it’s pretty basic, you don’t want people to know that you are a junior developer.

For the memory game, since you have 2 game modes, you could add a “back” bottom so you can go back to the home page in case you want to select another mode.

I’m in the same boat as you man, trying to land my first job, it’s pretty competitive out there, we really need to go the extra mile if we want to get hired. Hope it helps.

1 Like

Thanks for the tips.

To be clear, I didn’t build the portfolio template. It’s a template I got online and customized. I’m not much of a designer, so the apps are the extent of my “design” skills. Maybe I just need to spend more time working on those.

A couple of basic resume rules that you may or may not know –

1 - you don’t want to send out that resume every time. Make that your basic outline. You need to add the keywords from job listing. Many companies don’t even look at resumes until they’ve run them through a keyword program – they consider it a waste of time. Customize every resume and cover letter.

2 - After you have customized your resume(s), save them to .txt file also. You will immediately see that your pretty, well formatted resume looks pretty ugly as a .txt file. Go through and reformat the .txt file to make it more readable, save it, and include it with your other files – especially when sending your info digitally. The completeness of this effort impresses a lot of HR people.

Then that just proves my point, just do the same thing that you did with your portfolio and apply it to your side projects. You can go to dribble, monster, awards, etc. Whatever site you know, pick a design from an e-commerce app, change a few things to fit the needs of your project and that’s it.

I don’t know maybe it’s just the way I see things but I think frontend and design are very much related. You don’t have to be a designer, but your projects need to look appealing.

1 Like

Hi, your ecommerce project is cool on desktop screen and my opinion it is a real world application that a company could need.

I know your app is not finish, but you could add a routing system on client side as it is not long to implement.

I checked your code, here what I recommend you:

  • Follow the best practice architecture Containers/component (smart components in containers, and dumb in components)
  • Use always const var
  • If your component is stateless, use functional component and not class! ressources cost will be greatly improved for bigger project.
  • You could declare your proptypes at the top of each page, even if not very useful, it improves readability and is best practice.
  • Your database: It is better to make a json file instead placing it in a component, it will show your ability to work with API.

ES6 syntaxes:
example1:
this.setState({ addItemFilterList: addItemFilterList });
destructure like this: this.setState({ addItemFilterList });

example2: addItemToStore() {} to addItemToStore = () => {} (so you can delete the associated bind this in constructor)

example3:
let addItem = this.addItemToCart no need, just let this.addItemToCart in your code for better readibility

example4:
let filterList = this.state.filterList;
instead you should write const { filterList } = this.state;
you should write all your props and state on top like so:
const { thestate } = this.state and
const { theprops } = this.props

example5:
You should avoid the loop for for immutability.
instead this:
{this.state.cart.map(function(item) {
let itemAtIndex = itemList[item.index];
return <CartItem itemName={itemAtIndex.name} …}

you could do this
const { cart } = this.state (in render section), then
cart.map(item => <CartItem key={item.id} itemName={item.name} …}

If you need to map but you do not have unique identifier you could use index like so:
cart.map((item, index) => <CartItem key={index} itemName={item.name} …)}

If you want to pass all props or state, you could do this for better readibility:
cart.map((item, index) => <CartItem {…this.state} {…this.props} /> )}

If you need to learn faster I can help you on these features:

  • redux, async redux with redux thunk, selectors to optimize requests
  • back-end: Authentification (jwt token, encrypted password), building api (express, mongoose), CRUD operations…

You can send me an email at: niels.dominguez[at][gmail].[com]

Keep it up :slight_smile:

1 Like

You are almostt there. If you apply as it is, you probably won’t get much call backs or replies. This is generally how I find out if I’m “good enough”. I apply to like 20 places, and if I dont hear back, I get back to work and expand my game. Your portfolio looks clean, but as you said, its not your own design. That means CSS and HTML , and maybe even some JavaScript on your website isn’t really created by your own, instead you just copy and pasted.

Making a website look nice takes practice and experience. After I learned much more, I came back to my projects (still working on em) and re-designed everything by applying everything I learned.

Also, even if you are going for front-end, I think having some back-end knowledge is crucial to all web developers. This will be a huge plus on your portfolio, if you have some full-stack apps and people looking at your portfolio sees it.

Keep at it

1 Like

Hi Jordan,

On “the apps are the extent of my “design” skills” - what are you referring to when you say “design”? If by “design” you mean graphics, then that’s ok for a front-end developer but if you mean layout etc. or UI design then I think you need to learn those design skills, because front-end development is everything client side which means designing/laying out the UI in an appealing way. If I was an employer, I wouldn’t want to hire you, because I’d have to hire someone to come in after to make the UI look good.

In an interview, I’d ask how much of it you customised.

1 Like

Looks really good. Here are some things that I saw.

  • Great use of parallax.

  • in your “Here’s a breakdown of my resume”, your Education section should be aligned with your Certifications section.

  • for your Projects section I would make the images smaller and right-align the text. It looks off when having the text under it and a huge whitespace. That would also make it easier to distinguish between projects.

  • I think that the labels “memory game, e-commerce app, etc.” should have a border shadow so that they stand out more in the non-hover state, especially because they are buttons/links. They look to blended with the image.

  • you should absolutely NOT put your actual email on your site. Create a .php called mail.php and put this code in it.

<?php 

    require 'phpmailer/PHPMailerAutoload.php';

    $mail = new PHPMailer;

    // $mail->SMTPDebug = 3;                               // Enable verbose debug output

    $mail->isSMTP();                                      // Set mailer to use SMTP
    $mail->Host = '<Specify main and backup SMTP servers>';  // Specify main and backup SMTP servers
    $mail->SMTPAuth = true;                               // Enable SMTP authentication
    $mail->Username = '<SMTP username>';                 // SMTP username
    $mail->Password = '<SMTP password>';                           // SMTP password
    $mail->SMTPSecure = 'ssl';                            // Enable TLS encryption, `ssl` also accepted
    $mail->Port = <The port to connect to>;                                    // TCP port to connect to

    $mail->From = '';	//Email that will send this message to your email';
    $mail->FromName = 'Mail service';//$_POST['name'];
    $mail->addAddress('<email you want to receive message>', '<Name of the email account>');     // Add a recipient      // Name is optional
    $mail->addReplyTo($_POST['email'], $_POST['name']);

    $mail->WordWrap = 50;                                 // Set word wrap to 50 characters
    $mail->isHTML(true);                                  // Set email format to HTML

	//Set the subject of the email. Here is an example to table booking
    $mail->Subject = $_POST['name'] . ' sent you a message';
    $mail->Body    = '<p>' . $_POST['name'] . '</p>';
    $mail->Body    .= '<table>';
    $mail->Body    .= '<tbody>';

    $mail->Body    .= '<tr><td>';
    $mail->Body    .= 'Name: ' . $_POST['name'];
    $mail->Body    .= '</tr></td>';

    $mail->Body    .= '<tr><td>';
    $mail->Body    .= 'Email: ' . $_POST['email'];
    $mail->Body    .= '</tr></td>';
    
    $mail->Body    .= '<tr><td>';
    $mail->Body    .= 'Telephone: ' . $_POST['telephone'];
    $mail->Body    .= '</tr></td>';

    $mail->Body    .= '<tr><td>';
    $mail->Body    .= 'Message: ' . $_POST['message'];
    $mail->Body    .= '</tr></td>';

    $mail->Body    .= '</tbody>';
    $mail->Body    .= '</table>';
    // $mail->AltBody = 'This is the body in plain text for non-HTML mail clients';

    if(!$mail->send()) {
        echo 'Message could not be sent.';
        echo 'Mailer Error: ' . $mail->ErrorInfo;
    } else {
        echo 'OK';
    }
?>

or you can use this one that is simpler.

<?php
    $to = 'demo@spondonit.com';
    $firstname = $_POST["fname"];
    $email= $_POST["email"];
    $text= $_POST["message"];
    $phone= $_POST["phone"];
    


    $headers = 'MIME-Version: 1.0' . "\r\n";
    $headers .= "From: " . $email . "\r\n"; // Sender's E-mail
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

    $message ='<table style="width:100%">
        <tr>
            <td>'.$firstname.'  '.$laststname.'</td>
        </tr>
        <tr><td>Email: '.$email.'</td></tr>
        <tr><td>phone: '.$phone.'</td></tr>
        <tr><td>Text: '.$text.'</td></tr>
        
    </table>';

    if (@mail($to, $email, $message, $headers))
    {
        echo 'The message has been sent.';
    }else{
        echo 'failed';
    }

?>

You can create a contact form and use this to keep your email safe against hackers and spammers. Once you have this file I would save it somewhere as a snippet. You can reuse this for every non-CMS website you create.

Great job on everything and I hope this helps.