The Non-Developer’s Guide to Hiring Software Engineers

You know the drill. Great startup idea meets meets huge roadblock: how does a non-developer go about hiring a software engineer? For us non-developers, this obstacle is pretty make-or-break. We don’t have the luxury of skipping it, since we can’t do the coding ourselves, and if we don’t hire someone, we can kiss our project goodbye.Thankfully, there are a few tried and true steps to getting the right programmer for your team. They’re not set in stone, but they’re guaranteed to make the process a whole lot easier. Try these out, and tweak them until they work perfectly for you.


Plan ahead. Before you start reaching out to developers, you should have a pretty good idea of what your project’s going to look like. If it’s a website, what differentiates it from other similar sites? Are there going to be different membership plans? If it’s an app, what market are you looking to enter? Are there going to be unlock options? If you have some apps or websites you really like, pull a list together and be able to talk about the specific features you’re drawn to, why, and how you think you may want to incorporate them into your project.


Crack some code. It’s tough to know exactly what to look for in a developer if you don’t have the slightest idea what coding is. You don’t need to become Mark Zuckerberg. Logging a few hours on one of Code Academy’s free tutorials should at least help you understand some of the basics of what’s involved in programming. Learning a bit about how software works might also give you some ideas for your project that you hadn’t considered before.


Get help. You’re not going to find a good developer on your own unless you’re extremely lucky and your college roommate was a coding whiz who owes you one. Though there are millions of developers out there, most of them are sitting somewhere behind a computer screen, and it’s going to be tough to get in touch. One of your first steps should always be to go to a hiring website. It’s going to cost a small commission, but it’s definitely worth the price, since without a good coder, you’ll be making exactly zero money. Our current favorite is Toptal, an awesome company that vets its coders with a super intense application process.


Don’t forget personality. Your coder is probably going to be working remotely. That doesn’t mean that you won’t care if they’re annoying, lazy, or rude. Make sure you pick someone who’s going to fit in seamlessly with your team, has a great work ethic, and is an excellent communicator.


Dial down the stress. We’ve all been there. You want your app to get to market as quickly as possible, so you feel like you should hire a programmer as soon as possible. Don’t rush the process. Taking an extra week or two to vet candidates will pay off in the long run when you get the best person for the job and avoid a subpar programmer who seemed really great during your first interaction. Slow down, and you’ll thank yourself later.


Present a challenge. Coders like coding for a whole host of reasons, but chief among them is a hunger for challenges. Don’t be afraid to present your developer with a tough predicament (so long as it’s sufficiently detailed and clear) and let their drive carry them forward.


Two at a time. If you need a lot of developers, you’re probably feeling even greater pressure to hire quickly. Don’t do it. The only thing worse than hiring one subpar developer is hiring a bunch of them. Make sure to limit yourself to hiring one or two developers at a time so that you can see how they fit in with the rest of your development team and the rest of your company. You don’t want to wake up one day and realize that you need to fire half of your programming team, so make sure to take things slow, especially at first.


Check them out. Look at your candidate’s past work. What sorts of apps have they developed, and how satisfied were their customers? Are they frequent contributors to open-source sites? Do they have a website that lists their past accomplishments? Make sure to do your background research so that you can ask them direct questions about their strengths and weaknesses in your interviews.


Top talent. Especially when hiring for a long-term project, you want to take the best coder possible, which isn’t always the same thing as taking a coder whose skills line up perfectly with what you’re looking for. Obviously, you shouldn’t take someone with absolutely no experience in the field you want. On the other hand, when you’re picking between an all-star with slightly less experience and a dud with slightly more, you should always take the all-star. It’s much easier for a developer with heaps of talent to pick up a new skill than for an average developer who has studied a lot of languages to quickly learn a new one.


There you have it. These are just a couple of the best tips for finding a developer who’s right for you. Play around with them, and see which ones work best for you. You may rewrite some, add in your own, or place different levels of emphasis on the ones we suggested, but this is a great base from which to expand. Good luck!

Amazing Java Communities That Every Web Developer Should Know

As Orson Scott Card once said, “Every person is defined by the communities she belongs to.” Now, when he said that, he probably wasn’t thinking of Java communities, but we’re pretty sure the saying still holds. For any Java developer — whether you’re eagerly awaiting the results of your first loop or you just wrote your tenth app — communities are extremely important. They’re not just a way of connecting to other developers (though if you spend most of your days stuck in front of your computer screen, that might be important); they can also help you learn helpful new skills, brush up on old ones, and solve the seemingly unsolvable bugs that are holding you back. There are dozens of Java communities out there (not to mention the hundreds of general programming ones), but here are a couple of our favorite communities. They’re geared towards a variety of levels so, no matter how experienced you are, there’s one on this list that’s right for you.


  1. Oracle


While you may first recognize Oracle as a great place to purchase data services, they also host an extremely vibrant Java community. On their Java homepage, they offer a variety of options: joining a Java User Group (JUG), hearing Java “evangelists” discuss their experience, getting paid for technical articles, and more. They also have a wide variety of resources, including reviews and explanations of all Java products, and some helpful forums, demos, videos, and tutorials for those who are just starting out. If that isn’t enough to attract you, they also have dozens of APIs for each version of Java. What are you waiting for?


  1. JavaWorld


This is the sort of site that Java programmers dream about. If something has anything to do with Java, it’s on JavaWorld. If you’re a beginner, you can learn all about Java’s platform, security, and testing, and read up on all of the news about Java’s newest releases. They also have a helpful section for those who are interested in learning to code a bit better. In addition to all that, they have some helpful tips and articles about mobile and app development and, for some more veteran programmers, a whole docket of open source projects you can look into. If you’re still  not satisfied, head to their ‘White Papers’ section and get to work.


  1. Toptal


Whether you’re an enterprising Java developer looking for work or a company looking to hire a Java rockstar, Toptal is the place to go. On their resources page, they have a helpful and extensive list of potential interview questions and acceptable answers to help you determine how talented the Java programmer you’re thinking of hiring is (if you’re a developer, it can’t hurt to read up on these, too — you never know when the answers will come in handy!). If you’re neither looking for work or looking to hire, this is still a great place to check in and make sure you’re on the cutting edge. You should also check out the Toptal Engineering Blog, which covers everything from freelancing to the newest updates in Java programming. Get started!


  1. New York City Java Meetup Group


If you’re not in New York, this probably isn’t for you, but there’s sure to be an alternate meetup group somewhere nearby. If you do happen to be in the city, this is one of our favorite meetup groups to frequent. We spend so much time locked into our screens that we sometimes forget that there’s an entire world of human contact out there, and that plenty of those humans are talented programmers. There’s nothing quite like being able to discuss a thorny software issue or cool new feature with a bunch of like-minded, high-energy, talented developers. It’s also a great way to network to find future jobs, get help solving any bugs that you might encounter, and find inspiration!


  1. Java Programming Forums


In addition to having some helpful articles and videos, Java Programming Forums is obviously all about forums. There are forums for anything — tips for a new app, debugging a pesky piece of code, networking, and more — and all you have to do is log on. Whatever your issue is, the odds are pretty good that someone on the forum will be able to give you a hand.


These are just a few of the endless resources open to you as a Java programmer. If you’re an old hand, you might be familiar with a few of them, but it can’t hurt to go back and check them out again. The best thing about these communities (with the obvious exception of meetups) is that they’re mobile; no matter where you go, you can stay in touch with a vast web of programmers who are willing to help you purely out of passion for the art you share. There aren’t many opportunities for the wider web development community to get a little sappy, but this is definitely one of them!