Programmer
Programmer
The latest data from Dice suggests that employers want software developers
whore experts in well-established technologies such as .NET, C++, and
HTML. But IT is a rapidly evolving field, which begs the questionwhat will
the employers of tomorrow want, skills-wise, from developers?
Before taking a stab at that question, its worth examining the particular
skills currently in demand by employers. On Dice, hiring managers searched
thousands of times between January 1 and April 15 of this year for software
developers, engineers, architects and leads. Of the most sought-after skills
and qualifications for those roles, the top 40 included:
1. Java/J2EE
2. .NET
3. C++
4. C#
5. Senior
6. SQL
7. HTML
8. C
9. Web
10. Linux
11. WPF
12. JavaScript
13. SDLC
14. Python
15. Test, Tester, Testing
16. Embedded
17. ASP.NET
18. Oracle
19. HTML5
20. PHP
21. SharePoint
22. Unix
23. RWD
24. Mobile
25. Ruby
26. Security
27. Database
28. XML
29. Perl
30. Agile
31. Android
32. CSS
33. Computer Science
34. Network
35. iOS
36. Websphere
37. Spring
38. QA
39. MVC
40. SDET
Todays biggest needs surround the core, but it will change as the next
generation of technologies realize their promise, wrote Shravan Goli,
Most often the question someone asks is based on whether or not they
should invest their time in a particular programming language or technology
versus another.
Ive been giving this quite a bit of thought lately and Ive come up with what
I think are the most important and timeless skills that a software developer
can attain which will give them the best career opportunities and make them
the most effective.
Skill 1: Solving Problems
Ive talked about the need to learn how to solve problems before and Ive
even given some steps of how to learn to solve problems, because I believe
this skill is critical to any software developer.
Software development is 100% about solving problems.
Without problems there wouldnt be a need for software.
All software is designed to solve some user problem and within that general
solution is a wide array of smaller problems that make it up.
It really doesnt matter what programming language or technology you use,
if you cant solve problems, you wont be very good at developing software.
It is amazing how bad most developers are at solving problems.
I constantly hear complaints about job interviews that are too hard because
they ask the developer to solve some difficult problem.
Ive talked about why hard interviews are good and part of the reason is because
they test a developers ability to solve problems.
I know that many developers still disagree with me about this point and dont
see why a site like TopCoder would improve their development skills so much, but I
know from personal experience that it was the practice of solving problems
on TopCoder that was the turning point in my career.
Think about a carpenter. If you want be a successful carpenter, you should
probably be good at cutting wood. You should probably have practiced doing
all kinds of cuts and using many different tools to cut wood.
It doesnt matter how many years experience in carpentry you have had or
how well you can design furniture or cabinetry if every time you try to cut
wood you struggle with making the cuts.
Cutting wood is a base skill of carpentry, just like problem solving is the base
skill of software development.
Skill 2: Teaching Yourself
There is probably no more important skill in life than learning to learn.
This skill is especially important in software development, because no field I
know of changes more rapidly than software development.
You cant know everything about everything. You cant even really invest the
time it takes to be a master of one particular framework or technology
things are moving way too fast!
Instead you need the ability to quickly acquire the knowledge you need for
the task at hand.
If you truly want to have a skill that will propel you through your software
development career, learn how to teach yourself.
The only way to develop this skill is to put it into use. Go out and learn a
new programming language or technology, even if you think youll never use
it. Youll be surprised how quickly you may be able to pick it up because of the
foundation you will already have in what you know.
If you can quickly adapt to the rapidly changing software development
market and technologies and platforms associated with it, you will have skills
that will always be in demand.
Although I am a bit skeptical of some of Tim Ferriss claims, he has an
excellent book called the 4-Hour Chef which has some great techniques about
how to learn things rapidly. (I was wanting to write a book about this very
subject.)
Skill 3: Naming
When people ask me what I do all day, I mostly say read things other people
name and name things.
Ok, no one really asks me that and I wouldnt really answer it that way, but I
certainly could.
Software development is all about describing the metaphysical. Most of
what we are building cant be seen.
We have to construct in our minds an entire world with authorization
managers taking authorization requests and spitting out authorization
response alongside user repositories using user factories to assemble new
users.
Every time you are writing code you are naming things. When you read code
that you or someone else has written, you are gaining most of your
understanding about that code from the names of things in that code.
Most of the time I can accurately predict a developers skill level by looking
at how they have named methods, variables and classes in code they have
written.
A developer who lacks the ability to give good names to concepts and data in
their code is like a mute translator. It doesnt matter if you can understand
something, if you cant adequately explain it, the moment it leaves your
head it is gone.
The best way to improve this skill is to always put it into practice. Ill often
rename things in code I am just reading to get an understanding. As I start
to understand what a method is doing, Ill change the name to match that
understanding. Ill do this while I am reading the code, not even making any
logic changes to it.
The more you focus on giving good names to things, the better at it you will
become.
This is also the most visible thing about your code. It is hard to know if your
code is correct or efficient by looking at it, but if I read it and can understand
it, I am going to assume you know what you are doing.
Skill 4: Dealing with People
I list this as last, but in many cases you could say it is the first or most
important skill.
Everywhere you go there are people.
Unless you work alone and develop software just for yourself, other people
are going to influence your career as a software developer.
Ive talked about why you might not want to criticize someone else before, but there is
much more to dealing with people than not pissing them off.
I always go back to the famous book by Dale Carnegie, How to Win Friends and
Influence People, because this book is so important in learning how to be a
successful human being.
Ive said it before, but if you want to develop people skills, read this book!
The basic problem is that humans are not logical creatures, we are emotional
ones. Sure, we like to pride ourselves on our ability to reason, but the reality
is that most decisions we make are more influenced by emotion than reason.
What this means for you as a software developer is that unless you can
effectively deal with other developers, managers, and even customers, you
will constantly face trouble despite how good your ideas are or how valuable
your skills are.
Being active and involved in the software development community in general
can also help you immensely in your career. It is not just about networking,
but getting your name out there and building good Karma.
Doing this successfully hinges directly on your ability to deal with people.
(Want to take a big shortcut in learning how to deal with people? Its simple.
Be nice!)
What about practical skills?
Notice I didnt include anything in my list about a particular technology or
even as broad a skill as web development or mobile development?
It is certainly important to have a solid foundation in a couple of technology
areas, but what those areas are is not nearly as important as the 4 skills I
mention above.
If you can solve problems, learn things quickly, name things well and deal
with people, you will have a much greater level of success in the long run
than you will in specializing in any particular technology.
Planning to add some muscle to your software development team in 2014? If you
want to stay ahead of the curve in the New Year, you will want developers with
these skills working for you.
We analyzed the hiring requirements for thousands of tech companies and
consulted with our top tech recruiters to determine which software development
skills will be the most in-demand in 2014.
While heavyweights like Java and C# remain in demand, we are seeing strong
growth in mobile and big data technologies like HTML5, CSS3 and Hadoop, says
CyberCoders CTO Matt Miller.
10 Most In-Demand Software Development Skills for 2014
Java / Javascript
C# / ASP.NET
C++
Python
PHP
SQL / MySQL
HTML5 / CSS3
Ruby on Rails
Hadoop
iOS / Android
H-M
N-S
T-Z
(eventual) supervisor if the company would actually hire someone who had no
experience with C for this job. His response had a huge impact on my career.
He replied, "We don't hire people for what they know, but what they can learn."
These words have always resonated with me. From that point on, my career
strategy as a programmer has always been to look forward instead of simply
focusing on a specific, current technology. As someone else told me more recently,
"As a programmer you don't have a single 30-year career, you have 30 one-year
careers".
Not only is technology constantly changing but, in todays world, programming can
be found in every aspect of our culture. This is what makes being a programmer so
interesting and rewarding. How many professions exist that can lead you down
paths as varied as health care, criminal justice, education, entertainment and just
about every area of business? The variety of programming career paths is pretty
impressive, and the opportunities to change paths, and even combine them, are
virtually limitless.
Perhaps the most interesting discussion that I have with people in the programming
industry, as well as those that teach programming, is this: What are employers
actually looking for in the people that they hire as programmers? With this
statement in mind, this article explores some of the questions that students often
ask me when they are looking to enter the programming industry; specifically, what
type of skills should they concentrate on learning.
What Skills Do Employers Say They Are Looking For?
My first stop was the local paper's classified ads, where you primarily see
programming job postings such as this (taken from an actual ad): Experienced Java
Web Developer. Required experience, Struts 2 or MVC. Hibernate or ORM.
JavaScript/jQuery, Ajax, Patterns, HTML and SQL.
Many of the ads require specific skills such as .NET and Oracle, as well as many
other skills that I have, honestly, never even heard of. Therefore, many people
believe that when you start an educational program, you should focus on the skills
that are hot technologies of today.
While I acknowledge that many jobs are looking for specific skills, , following this
strategy can be problematic. We all know that technology is changing so quickly
that no one knows what the hot technologies will be in one year, let alone the two
or four years that it will take to earn a certificate or degree.
So, if learning the latest technology isnt the best strategy, then what is?
NOTE
As with most things in life, rather than branding a single strategy as the best one,
the educational path you choose as a programmer depends on the context you find
yourself in. If you are a seasoned programming professional, then there obviously
are many situations where you need a certain skill set.
For example, if a company is looking to hire a contractor for a very specific skill set,
then they want to find someone who satisfies the immediate need. Or, an individual
may want to simply add a current technology to their programming toolkit by taking
a class or even pursuing a certificate.
What Are Employers Really Looking For?
After discussing these issues with people in both industry and academia over many
years, I have come to subscribe to the theory that programming is programming. In
my experience, when you hire someone for a programming position, you don't
necessarily know what technologies and/or languages your organization will be
using in a year. In fact, you may very well want this new hire to lead you into the
future and explore totally new directions.
What do employers really want when it comes to programming talent? Ultimately, I
decided to just ask the companies directly. First, I categorized the companies into
three size levels: small (10 or fewer employees), medium (between 10 and 100
employees) and large (greater than 1000 employees). I then asked them the
following questions:
1. What are the most important skills (technical, soft skills or otherwise) you
look for in hiring a programmer?
2. Do you focus on a specific programming language or technology (i.e., would
you pass on a good programmer who lacks a specific skill that your company
uses or would you train them)?
3. How important are the soft skills (writing, presentation and other
communications skills)?
4. What degrees or certifications are you looking for (how relevant are
certifications)?
5. Do your programmers create new code (product) or are they working on
maintaining existing code implementing and implementing third-party
products?
Questions and Answers
From all of the answers that I received, I chose the responses from four of the
software professionals that provided good representations of the three company
sizes. There are responses from two large companies, one medium company and
one small company.
Rather than attempt to interpret the answers, I simply present the answers
verbatim.
What are the most important skills (technical, soft skills or otherwise) you
look for in hiring a programmer?
Large Companies
issue, such as Linux versus Windows. I would think a person who has been exclusive
to one can pick up the other, and its worth it to train them if thats an issue."
Bottom Line: Strong programming logic required and sometimes specific
technologies preferred. Employers expect that programmers can learn to work in
most environments.
How important are the soft skills (writing, presentation and other communications
skills)?
Large Companies
Soft skills are extremely important. Potentially the most important skill you can
have. Once you are established as somebody who is technically serviceable, soft
skills are what generally drives promotions."
"Communication skills are very important, presentation skills less so."
Medium Companies
"It depends on the level of the programmer. For someone junior, 90% coding and
general aptitude, 10% soft skills. For someone more senior it increases
significantly."
Small Companies
"It seems like soft skills can never hurt and are often times very important. Even if a
programmer cant make Word documents or PowerPoints, they should be able to
understand and communicate the big picture about what they are doing, and how it
fits into the overall pieces of the organization. "
Bottom Line: Soft skills may ultimately be the most important skill, especially as you
move up the ladder in an organization.
What degrees or certifications are you looking for (how relevant are
certifications)?
Large Companies
"Certifications are fairly irrelevant. We require a 4-year college degree in any field,
Computer Science or MIS preferred and substantial evidence that you are
technically able to do the job and learn new technologies."
"I am more interested in skill set than degrees or certifications."
Medium Companies
"Degrees are all but meaningless. There are a LOT of degreed individuals that arent
good programmers. Certifications are a bit more useful, mostly in the fact that they
can impress clients (for consulting work). Aptitude, skill, capability, and experience
are FAR more valuable in the industry."
Small Companies
"Are there certifications for programming? I know there are certificates for a wide
range of 'IT' functions, but, I really dont consider IT to be programming, its (IT)
more about keeping computers and networks going, and to some extent the tools
that are used to keep them going."
Bottom Line: It's mostly what you can demonstrate that you know. Degrees may be
required for organizational purposes at some companies but it is mostly about
experience.
Do your programmers create new code (product) or are they working on
implementing and maintaining business systems (or a little of both)?
Large Companies
"We have separate teams called SM (Service Management) for application
maintenance. Our best developers are almost always creating new code."
"A little of both."
Medium Companies
"Mostly new code, but there is some systems work."
Small Companies
"Usually, its a little of both. I have observed that many companies talk about new
code, but the truth is that most folks get sucked up into maintaining existing code.
Whatever is bringing in revenue, or has a very high chance of bringing in revenue
gets the attention largely no matter what the plan is."
"Writing new code in established businesses is often difficult. In many cases, new
software comes from purchasing software from smaller companies. That leads to the
idea that new code comes from smaller and newer companies, and maintenance
comes from established companies."
Bottom Line: Companies are looking for programmers to maintain code and create
new code (I was surprised at how much new code is being created).
Tips for Acquiring the Right Programming Skills
As a college professor advising students, here is some advice for anyone who wants
to be a programmer:
1. Dont get caught up with specific technologies, but focus on the foundational
career skills that the employers in this article describe.
2. Rather than focus on the classifieds, get out and network with local
programming professionals. I recently read that you are 4 -5 times more likely
to get a job through networking than applying to an employment posting.
3. Gain as much practical programming experience as possible through school
projects, internships, and self-driven projects (one of the questions that
employers are most certainly going to ask you is what kinds of applications
and websites do you create on your own time just for fun.).
4. Participate in hackathons and other DIY projects. This will not only hone your
programming skills, but also show that you are passionate about
programming.
During my discussions with many software professionals regarding these questions,
I was struck by the fact that, despite the tremendous technological changes over
the past 10-20 years, what employers are looking for in programmers hasn't really
changed all that much. While it is obvious that programmers today are using
different programming languages, operating systems and other modern
technologies, the employers are still basically looking for the same types of
programmers that they were 10 years agofor that matter, even 20 years ago.
Consider how people might use the site other than from the major browsers:
cell phones, screen readers and search engines, for example. Some
accessibility info: WAI and Section508, Mobile development: MobiForge.
Staging: How to deploy updates without affecting your users. Have one or
more test or staging environments available to implement changes to
architecture, code or sweeping content and ensure that they can be deployed
in a controlled way without breaking anything. Have an automated way of
then deploying approved changes to the live site. This is most effectively
implemented in conjunction with the use of a version control system (CVS,
Subversion, etc.) and an automated build mechanism (Ant, NAnt, etc.).
Don't put users' email addresses in plain text as they will get spammed to
death.
Build well-considered limits into your site - This also belongs under Security.
Redirect after a POST if that POST was successful, to prevent a refresh from
submitting again.
Don't forget to take accessibility into account. It's always a good idea and in
certain circumstances it's alegal requirement. WAI-ARIA and WCAG 2 are good
resources in this area.
Security
It's a lot to digest but the OWASP development guide covers Web Site
security from top to bottom.
Know about Injection especially SQL injection and how to prevent it.
Never trust user input, nor anything else that comes in the request (which
includes cookies and hidden form field values!).
Hash passwords using salt and use different salts for your rows to prevent
rainbow attacks. Use a slow hashing algorithm, such as bcrypt (time tested)
or scrypt (even stronger, but newer) (1, 2), for storing passwords. (How To
Safely Store A Password). The NIST also approves of PBKDF2 to hash
passwords", and it's FIPS approved in .NET (more info here). Avoid using MD5
or SHA family directly.
Don't try to come up with your own fancy authentication system. It's such an
easy thing to get wrong in subtle and untestable ways and you wouldn't even
know it until after you're hacked.
Know the rules for processing credit cards. (See this question as well)
Use SSL/HTTPS for login and any pages where sensitive data is entered (like
credit card info).
Avoid Clickjacking.
Keep yourself informed about the latest attack techniques and vulnerabilities
affecting your platform.
Consider The principal of least privilege. Try to run your app server as nonroot. (tomcat example)
Performance
Use CSS Image Sprites for small related images like toolbars (see the
"minimize HTTP requests" point)
Static content (i.e. images, CSS, JavaScript, and generally content that
doesn't need access to cookies) should go in a separate domain that does not
use cookies, because all cookies for a domain and its subdomains are sent
with every request to the domain and its subdomains. One good option here
is to use a Content Delivery Network (CDN).
Minimize the total number of HTTP requests required for a browser to render
the page.
Utilize Google Closure Compiler for JavaScript and other minification tools.
Make sure theres a favicon.ico file in the root of the site, i.e. /favicon.ico.
Browsers will automatically request it, even if the icon isnt mentioned in the
HTML at all. If you dont have a/favicon.ico, this will result in a lot of 404s,
draining your servers bandwidth.
Use "search engine friendly" URLs, i.e. use Page on example.com instead
Page on ofexample.com
When using # for dynamic content change the # to #! and then on the
server$_REQUEST["_escaped_fragment_"] is what googlebot uses instead of
#!. In other words,./#!page=1 becomes ./?_escaped_fragments_=page=1.
Also, for users that may be using FF.b4 or Chromium,
history.pushState({"foo":"bar"}, "About", "./?page=1"); Is a great command.
So even though the address bar has changed the page does not reload. This
allows you to use ? instead of #! to keep dynamic content and also tell the
server when you email the link that we are after this page, and the AJAX does
not need to make another extra request.
Don't use links that say "click here". You're wasting an SEO opportunity and it
makes things harder for people with screen readers.
Use <link rel="canonical" ... /> when you have multiple URLs that point to
the same content, this issue can also be addressed from Google Webmaster
Tools.
Install Google Analytics right at the start (or an open source analysis tool like
Piwik).
If you have non-text content look into Google's sitemap extensions for video
etc. There is some good information about this in Tim Farley's answer.
Technology
Understand HTTP and things like GET, POST, sessions, cookies, and what it
means to be "stateless".
Write your XHTML/HTML and CSS according to the W3C specifications and
make sure they validate. The goal here is to avoid browser quirks modes and
as a bonus make it much easier to work with non-standard browsers like
screen readers and mobile devices.
Understand how JavaScript, style sheets, and other resources used by your
page are loaded and consider their impact on perceived performance. It is
now widely regarded as appropriate to move scripts to the bottom of your
pages with exceptions typically being things like analytics apps or HTML5
shims.
Understand how the JavaScript sandbox works, especially if you intend to use
iframes.
Be aware that JavaScript can and will be disabled, and that AJAX is therefore
an extension, not a baseline. Even if most normal users leave it on now,
remember that NoScript is becoming more popular, mobile devices may not
work as expected, and Google won't run most of your JavaScript when
indexing the site.
Learn the difference between 301 and 302 redirects (this is also an SEO
issue).
Don't reinvent the wheel. Before doing ANYTHING search for a component or
example on how to do it. There is a 99% chance that someone has done it
and released an OSS version of the code.
On the flipside of that, don't start with 20 libraries before you've even
decided what your needs are. Particularly on the client-side web where it's
almost always ultimately more important to keep things lightweight, fast, and
flexible.
Bug fixing
Understand you'll spend 20% of your time coding and 80% of it maintaining,
so code accordingly.
Have a system for people to contact you with suggestions and criticisms.
Document how the application works for future support staff and people
performing maintenance.
Make frequent backups! (And make sure those backups are functional) Ed
Lucas's answer has some advice. Have a restore strategy, not just a backup
strategy.
Use a version control system to store your files, such as Subversion, Mercurial
or Git.
Make sure you have sufficient logging in place using frameworks such as
log4j, log4net or log4r. If something goes wrong on your live site, you'll need
a way of finding out what.
When logging make sure you capture both handled exceptions, and
unhandled exceptions. Report/analyse the log output, as it'll show you where
the key issues are in your site.
Lots of stuff omitted not necessarily because they're not useful answers, but
because they're either too detailed, out of scope, or go a bit too far for someone
looking to get an overview of the things they should know. Please feel free to edit
this as well, I probably missed some stuff or made some mistakes.
Related Questions
What skills should a web developer have?
What are the essential skills of a .net developers?
What Photoshop skills are essential for web development?
1. Be an egoless programmer. Remember that you are not your code. The
only way to improve is to be open to feedback from others and give honest,
non-judgemental feedback to others.
2. Be a team player. Building software is a team sport. You dont own your
parts of the code. Instead, your job is to make sure the whole package works
as expected. Dont be a typical well, it works on my machine guy. It has to
work on users machines.
3. Be a learner. Technology is changing fast. What was hot 5 years ago is no
longer the beststuff thats relevant today didnt even exist 5 years ago. You
have to constantly learn new things (e.g. languages, libraries, patterns).
4. Be a T-shaped person. Specialize in one narrow field and have a general
understanding of a broader range of technologies. This makes you a very
valuable asset within any organisation.
5. Be relentlessly resourceful. Become a go-to person that can solve any
problem. You dont have to be able to solve every problem yourself, but you
always know where to go to find the answer.
As in Why no one is looking for rockstar programmers stop believing in the
Ninja/Rockstar myth.
Laziness
Refuses to do anything twice: writes a script or algo for it.
Cowardice
Thinks to test, worries over load and code impact
Recklessness
Tries new stuff constantly, launches same-day ideas
4. Accessibility
Developers must be able to write code that is flexible enough to be used in
different ways. Search engines and screen readers for the blind are two
examples of machines interpreting your code. Sites that are heavy with Flash
or foreground images for UI tend to struggle here.
Accessibility at it's core is really about usability. Can the user use your
product? Web developers must know about any obstacles between the user
and the product to better design it. Is the product usable on small screens like
mobile devices or even older monitors? Do users know to click on a particular
button to continue to the next page or is the page difficult to understand?
How about users with images, cookies, or JavaScript disabled? What if they're
just using a really old version of a browser? What do you do for them?
Know your user, set limits to what you will and will not support, implement a
cross-compatible solution, and test thoroughly.
5. Security
I leave security for last, but really it's a top priority. Every web developer
must understand how malicious people can use their product to attack the
site or other even other users.
If the web developer has skill #1, they should be familiar with the security
concerns of the industry and common defenses.
One non-skill that I think deserves recognition on this list is motivation. Web
developers should be passionate about what they do and never stop learning more.
Read those blogs, pick up a few higher-level books, and go to the networking events
like conferences and local meetups. Strive to learn more, improve skills, and
educate others.
When we started hiring, our focus was on development. I was the only tech guy and
needed a lot of help in development. I'm super happy with our current team, and
here are some things I looked for in developers:
1. Know how to program : Not syntax, but program. Anyone can learn syntax, but
the principles of programming are applied everywhere.
2. Willingness to learn: The web is super fast moving. New web tech that comes
out literally every day, is unbelievable. My ideal web developer would have to be
open to trying new technology. If you don't like change, you will NEVER be a good
developer.
3. Intelligence: Challenge yourself and your colleagues. There are about a billion
different ways you can code up a web page, but are you intelligent enough to
understand the differences, and use what suits your needs best?
4. Love of the game: Love what you do. Don't get enough of it.
What are the ideal frontend skills for a web backend developer to have?
What are the most important skills a web developer needs to know in 2013?
What is the best way to improve your web development skills?
What are the "Web Development Design patterns" that you feel every web
What are all the skills that a web designer/developer needs to know?
What are the essential parts of a modern web development stack?
What essential skills are needed to be a (minimal viable) full-stack web
programmer?
of the context of work it can help you come to reasonable and timely compromises
(also, you have to be willing to compromise).
Taking a short period of time out of your day to form empathy for the people around
you will create a significantly better work environment for everyone. If youre still
not sold, at the very least, having the ability to show empathy in communication will
shorten meetings (less back and forth) so you can get back to coding quicker.
2. Time and Stress Management (Dealing with Yourself)
Every product, site and app someone thinks up has to be built, and anyone who has
ever worked with a client knows that they all think their idea is amazing (some are)
and they want it built yesterday. This can cause a lot of stress.
There are some people will tell you if youre not stressed out, youre not working
hard enough, but there have been enough studies recently to show that a relaxed
developer is a better developer. Someone who takes breaks is going to produce
better projects in the long run than someone who cranks away for nine hours a day
with his head down.
Knowing how to effectively manage your time, prioritize tasks and take breaks when
you need them will allow a little leeway in your work. By creating reasonable
deadlines and expectations it will help you better communicate to managers and
clients about how you work, and what exactly you need to build the best possible
product. Ultimately, everyone wants the best possible product.
3. Perspective (Knowing What You Do)
If youve read any of my other writings or have seen me speak youve probably
heard me talk about how building web sites (or apps) is not a noble profession.
There are obviously a lot of loopholes in that theory, but for most of us out in the
real world who are building and designing products, its pretty accurate. Most web
developers are not out there saving lives like a doctor or nurse; were solving
interesting and complex problems, we work in intellectually stimulating
environments, and we build or maintain cool products (none of which existed 5-10
years ago).
Having some perspective about what you do for a living will travel though the rest
of your career like a shockwave. Its not to say youll have an epiphany one day,
walk out of work and donate all your time to orphans with diseases. It wasnt like
that for me at all. When I starting gaining perspective about my job I felt grateful,
relaxed, and worked even harder knowing that what I did day-to-day was pretty
cool. Instead of getting frustrated when everything wasnt perfect, I knew I could
put things down, go home, and it would be there for me tomorrow, because you
know no one is going to die if I have a headache and need to get away from my
monitor for a while.
I can honestly say that, as a developer, having perspective has helped my career
grow faster than learning any library or framework ever could. It even helped me be
more charitable outside of work; its a win-win.
designer/developer roles, and I naturally migrated over to more coding. On this one
specific project, I remember cracking open Photoshop and starting to pull out the
colors I needed to build the site. To me, most of them looked like the same dim color
of gray (somewhere around #cccccc) but the actual hex values were all a little off,
and I didnt understand why someone would choose to do that. Assuming it was just
a weird mistake, I ended up setting all the light grays to same color value. A few
years later I found out how to properly build out a color scheme by using a base
color and adjusting the saturation levels to create accent colors, both bright and
dim (grays). Thats why the gray was a little off; if I had that basic level of design
knowledge for creating color palettes the end product would have been a little bit
better.
I could share stories about a lot of different design principles Ive learned
throughout the years. Some of them Ive learned the hard way, and others have
been much more pleasant. The basic message Im trying get across is that, as a
developer, knowing a little bit about design can go a long way in your career. Many
people jokingly refer to this as knowing enough to be dangerous. I call this
knowing enough to know when you dont know enough. Its a very good thing, so
get off hacker news and learn something about design.
HTML
o
o
o
o
o
o
PHP
o
o
CSS
o
o
o
o
o
o
o
o
o
Best
o
o
o
o
Event
Knowledge of how to employ the jQuery library for visual effects, event
handling, and document manipulation.
o
o
Can execute tasks with both procedural and OOP development techniques.
Familiarity with the syntax and control structures of the given language.
HTML
o
o
o
o
o
o
o
o
o
o
XML
CSS
o
o
o
JavaScript
o
o
o
with Scrum or Kanban and seeing where the process might need to be tweaked for
them.
The available agile toolsets include varying degrees of complexity, and in many
cases the choices are tied to the flavor of agile development that you will be
adopting. It could be using a simple toolset like PivotalTracker or Trello, or it could be
leveraging a sophisticated tool like JIRA Agile.
each developer still needs to learn how to estimate specific tasks for their own
efforts within a larger project.
It is also important to remember that this ties hand in hand with your development
process. If you are leveraging an agile process, you need to take full advantage of
your toolset to let you know how accurate your estimates were. If you take the time
after each sprint to do your own personal retrospective, you will notice your
estimates becoming more accurate with each iteration.
I remember the day that I realized that irrespective of how awesome my code might
be, I could still totally fail a project if my estimates were wildly inaccurate. If I want
my organization or my client to appreciate what I bring to the table from a
development perspective estimates have to be something that I continue to
improve upon and make as accurate as possible.
4. Know JavaScript.
I would not have recommended this three years ago, but JavaScript is truly
becoming universal. There is not any tier that JavaScript cannot touch to some
extent. Currently you can utilize JavaScript to write mobile applications, server
applications, program the data tier, create a blogging engine, develop and execute
a custom workflow and pretty much anything else you can think of.
One of the big shifts that has been slowly happening is the ability to use JavaScript
as a shared logic layer between native experiences. For example, recently in iOS 7
Apple included a true JavaScript bridge within the SDK. This means that it is possible
to use JavaScript as a shared logic layer (for example between iOS and Android). As
the ubiquity of web technologies grows, I expect that the ability to use JavaScript in
this manner will grow to include most platform (included non-mobile ones).
I must make one important caveat here. JavaScript means different things to
different people. I dont mean know jQuery or know how to cut and paste from
StackOverflow. I mean really know the language. Read JavaScript: The Good Parts,
understand prototypal inheritance, and learn how to think and program like a
JavaScript developer. This will only benefit you in your endeavors.
5. Know a server side language.
This is a crucial element. If you are mainly a front-end developer, then you still need
to have a cursory understanding of how things work on the back-end. Being able to
create the entire chain from a front-end application through the API layer and to the
database is an important skill set. Luckily in this case, there are a lot of choices.
Java, .NET, Python, and PHP are all viable options (although there are wildly different
levels of complexity with those options).
One advantage for developers is that if you already know JavaScript, NodeJS is a
compelling option. It is amazingly easy to get up and running and do basic tasks
such as setting up a basic web server, creating simple test services for a mobile
application, and deploying applications to the cloud with services like Heroku and
Nodejitsu. I use NodeJS heavily in our Research and Development efforts at
Universal Mind, and we have used it for production with many of our clients
applications. Many organizations like Paypal also have it as an emerging element of
their architecture.
6. Know basic HTML and CSS.
Nothing is as ubiquitous in the developer landscape as web technologies. Most
every platform has the ability to render web content and HTML has become a de
facto way of abstracting layout concepts for many technologies. Even if you dont
do web development, having an understanding of HTML and CSS will only benefit
you.
Another aspect of this relates to your public face as a developer. I think every
developer should have a blog of some sort. This helps with overall personal
marketability as well as cataloguing the things you are involve with. While many
solutions exist for cataloguing ideas without having to leverage HTML directly, it is
still beneficial to know.
7. Know how to quickly find information.
I want you to think about your average day. Think of the times that you needed to
leave your tool of choice for writing code to go look up some information in your
browser? How often does that happen each day? 5 Times? 100 Times? No matter
the frequency, it happens several times every single day. Knowing how to quickly
find the information that you need could greatly reduce the time you have to spend
outside of your programming environment.
One of the characteristics I have continually noticed of great developers that have
worked on my team is their ability to find quality information themselves. This sets
them apart from average developers who need to be guided through a new process
or platform.
Many tools exist to help lessen this time by providing quick access to common
documentation or sites that you visit as a part of the development process. On Mac
tools like Alfred and Dash can help lessen the overall effort to get the
documentation you use on a daily basis. On Windows tools like Zeal provide similar
functionality. Some of these solutions (such as Alfred) offer the ability to customize
the workflows. As an example, one developer wrote a StackOverflow workflow for
Alfred that allows you to quickly search StackOverflow based on keywords you pass
in.
This year, if you dont have one of the tools in your toolbox, adopt a single one and
see how it can improve your search time.
8. Know how to maintain a project over time.
This can take many different forms. For example, you could put some of the
software you have written out as an open-source project. Additionally, you could
release an application in the iOS App Store, Google Play Store, Mac App Store,
Windows Phone Marketplace, etc In short, you need to know what it takes to put
some software out there where you are the maintainer of the codebase and its
roadmap.
One of the key benefits here is that you need to understand how your choices as a
developer can directly affect the portability or extensibility of your code base in the
future. As a developer or architect, you need to understand that your choices have
consequences. There is no better way to learn that then managing your own code
base over time.
9. Know Git well.
I realize that Git is more prevalent in some development communities over others,
but Git is more than just a VCS (version control system). Because of its efficiencies
in branching, it enables a very effective new flow that can be leveraged by both
individuals and teams.
Vincent Driessen proposed a model of how branches could be used within Git, and
this model is effectively known as git-flow. This approach is a fundamental shift
that affects not only source code but process as well. I have personally seen this
model work extremely well on projects with only a few developers to a few dozen
developers. I even use this process on the projects that I am the sole developer,
because I believe that practice is an essential element of learning any of these
skills.
Atlassian provides documentation for the Git-Flow branching strategy on their site
which is one of the best descriptions I have seen. In addition, Atlassians crossplatform Git and Mercurial tool, SourceTree, provides integrated support for Git-Flow.
If you are new to Git, learn it. If you are a novice, grow your skill set. Knowing Git
well will only help you as a developer.
10. Know a good tool for tracking tasks and issues.
Tracking both tasks and issues for a project is an essential task that developers will
encounter on a daily basis. While there are some quality tools that are free (such as
Github Issues or the issue tracker in Bitbucket), in most cases developers will also
leverage more sophisticated systems like JIRA in the development process. It is
important to learn these tools just like any other tool in your arsenal.
Learn to use these tools in a way that benefits you and streamlines your workflow.
Use them on your side-projects, and use them even when you think it might be
overkill. Learn how to do things which save you time like linking and closing issues
with your commit messages. In short, if you are going to use ityou need to be
good at it.
Resist the temptation to believe that 100% of your responsibility lies in code. To
become a well-rounded developer requires a skill set that spans technology,
process, and toolsets. With the shifting digital landscape, developers who have
invested in these areas will find themselves certainly in demand in 201
With the recent changes in the economy, a lot of developers are focused on their
short-term job prospects. At the same time, it's important to make sure that you get
the most bang for your buck when it comes to taking the time and energy to learn
new skills. Here is our list of 10 skills you should be learning right now to make sure
that your resume is relevant for the next five years. The list is hardly exhaustive,
and there are huge swaths of the industry it won't cover (mainframe developers, for
example). Nonetheless, for average mainstream development, you can't go wrong
learning at least seven of these skills -- not only to the point where you can talk
convincingly about them at a job interview, but actually use them on the job.
Note: This article is also available as a PDF download.
1: One of the "Big Three" (.NET, Java, PHP)
Unless there is a radical shift in the development world (akin to an asteroid hitting
Redmond), most developers will need to know at least one of the Big Three
development systems -- .NET (VB.NET or C#), Java, or PHP -- for the near future. It's
not enough to know the core languages, either. As projects encompass more and
more disparate functionality, you'll need to know the associated frameworks and
libraries more deeply.
2: Rich Internet Applications (RIAs)
Love it or hate it, in the last few years, Flash is suddenly being used for more than
just animations of politicians singing goofy songs. Flash has also sprouted additional
functionality in the form or Flex and AIR. Flash's competitors, such as JavaFx and
Silverlight, are also upping the ante on features and performance. To make things
even more complicated, HTML 5 is incorporating all sorts of RIA functionality,
including database connectivity, and putting the formal W3C stamp on AJAX. In the
near future, being an RIA pro will be a key resume differentiator.
3: Web development
Web development is not going away anytime soon. Many developers have been
content to lay back and ignore the Web or to just stick to "the basics" their
framework provides them with. But companies have been demanding more and
more who really know how to work with the underlying technology at a "hand code"
level. So bone up on JavaScript, CSS, and HTML to succeed over the next five years.
4: Web services
REST or SOAP? JSON or XML? While the choices and the answers depend on the
project, it's getting increasingly difficult to be a developer (even one not writing
Web applications) without consuming or creating a Web service. Even areas that
used to be ODBC, COM, or RPC domains are now being transitioned to Web services
of some variety. Developers who can't work with Web services will find themselves
relegated to legacy and maintenance roles.
5: Soft skills
One trend that has been going for quite some time is the increasing visibility of IT
within and outside the enterprise. Developers are being brought into more and more
non-development meetings and processes to provide feedback. For example, the
CFO can't change the accounting rules without working with IT to update the
systems. And an operations manager can't change a call center process without IT
updating the CRM workflow. Likewise, customers often need to work directly with
the development teams to make sure that their needs are met. Will every developer
need to go to Toastmasters or study How to Win Friends and Influence People? No.
But the developers who do will be much more valuable to their employers -- and
highly sought after in the job market.
6: One dynamic and/or functional programming language
Languages like Ruby, Python, F#, and Groovy still aren't quite mainstream -- but
the ideas in them are. For example, the LINQ system in Microsoft's .NET is a direct
descendent of functional programming techniques. Both Ruby and Python are
becoming hot in some sectors, thanks to the Rails framework and Silverlight,
respectively. Learning one of these languages won't just improve your resume,
though; it will expand your horizons. Every top-flight developer I've met
recommends learning at least one dynamic or functional programming language to
learn new ways of thinking, and from personal experience, I can tell you that it
works.
7: Agile methodologies
When Agile first hit mainstream awareness, I was a skeptic, along with many other
folks I know. It seemed to be some sort of knee-jerk reaction to tradition, throwing
away the controls and standards in favor of anarchy. But as time went on, the ideas
behind Agile became both better defined and better expressed. Many shops are
either adopting Agile or running proof-of-concept experiments with Agile. While
Agile is not the ultimate panacea for project failure, it does indeed have a place on
many projects. Developers with a proven track record of understanding and
succeeding in Agile environments will be in increasingly high demand over the next
few years.
8: Domain knowledge
Hand-in-hand with Agile methodologies, development teams are increasingly being
viewed as partners in the definition of projects. This means that developers who
understand the problem domain are able to contribute to the project in a highly
visible, valuable way. With Agile, a developer who can say, "From here, we can also
add this functionality fairly easily, and it will get us a lot of value," or "Gee, that
requirement really doesn't match the usage patterns our logs show" will excel. As
much as many developers resist the idea of having to know anything about the
problem domain at all, it is undeniable that increasing numbers of organizations
prefer (if not require) developers to at least understand the basics.
9: Development "hygiene"
A few years ago, many (if not most) shops did not have access to bug tracking
systems, version control, and other such tools; it was just the developers and their
IDE of choice. But thanks to the development of new, integrated stacks, like the
Microsoft Visual Studio Team System, and the explosion in availability of high
quality, open source environments, organizations without these tools are becoming
much less common. Developers must know more than just how to check code in
and out of source control or how to use the VM system to build test environments.
They need to have a rigorous habit of hygiene in place to make sure that they are
properly coordinating with their teams. "Code cowboys" who store everything on a
personal USB drive, don't document which changes correspond to which task item,
and so on, are unwelcome in more traditional shops and even more unwelcome in
Agile environments, which rely on a tight coordination between team members to
operate.
10: Mobile development
The late 1990s saw Web development rise to mainstream acceptance and then
begin to marginalize traditional desktop applications in many areas. In 2008, mobile
development left the launch pad, and over the next five years, it will become
increasingly important. There are, of course, different approaches to mobile
development: Web applications designed to work on mobile devices, RIAs aimed at
that market, and applications that run directly on the devices. Regardless of which
of these paths you choose, adding mobile development to your skill set will ensure
that you are in demand for the future.
Programer
SAOP d.o.o. je ugledna i priznata kompanija koja uspeno posluje na podruju integrisanih
poslovnih i IT rjeenja. Zbog poveanog obima poslovanja, elimo zaposliti nove saradnike.
Konkurs vai za radna mjesta u Ljubljani i empetru kod Gorice u Sloveniji. Najboljim
kandidatima nudimo zaposlenja na poziciji:
DEVELOPER PROGRAMER (m/)
koji e raditi u istraivako - razvojnom timu.
Traimo iskusne strunjake, koji dobro razumiju koncepte programiranja te uivaju u
realizaciji sloenih zadataka i uspjeno se nose sa kompleksnim izazovima. Mi smo u potrazi
za onima koji se dobro osjeaju u "front-end" programiranju kao i one koji uestovati u
cijelom razvojnom procesu. Programiramo u .NET, konkretno ASP.NET MVC, ali vjerujemo, da
je svaki dobar programer u mogunosti da naui nove programske jezike.
ta nudimo?
Kandidatima nudimo rad u kreativno-razvojnom timu strunjaka, koji ukljuuje:
svakodnevne promjene
Ono to oekujemo?
Od kandidata se oekuje da:
Prijavite se!
Iskoristite priliku i postanite cijenjen lan uglednog i profesionalnog tima.
Do kada? Do i ukljuujui 06.02.2015
Gdje? Putem opcije "Prijavi se na oglas", uz napomenu 'developer programer'.
Lokacija:Ljubljana, empeter pri Gorici
Broj pozicija:5
Datum objave:15.01.2015.
Trajanje oglasa:22 dana (istie 06.02.2015.)
Software developer
We are looking for talented senior and junior level software developers to join our new team
in Sarajevo. You will be responsible for working with a group of developers and providing
technical expertise in a development of application components for enterprise level systems
including mobile, web, business processes, and database level development.
Required Skill Set
Good knowledge of the Microsoft .NET development platform, C#, and service
oriented development
2-3 years of experience developing and maintaining solutions in C#, ASP.NET MVC,
WCF, AJAX , T-SQL
Experience utilizing SQL Server for data storage in .NET based solutions
Good verbal, phone, and written communication skills in both English and Bosnian
Programer (m/)
Stepen strunosti:
VSS, Diplomirani ininjer ETF-a, PMF-a ili privatnih fakulteta navedenog smjera
Ostali uslovi:
Zahtjevi:
1. Iskustvo u radu sa Oracle i drugim bazama podataka
2. Iskustvo u Microsoft .net (C#, C++ ili VB.net) i Oracle programiranju
3. Poznavanje Cisco rutera
4. Iskustvo u administriranju servera ili radnih stanica
5. Odlino poznavanje engleskog jezika
6. Vozaka dozvola B kategorije
Samo-motiviranost i samo-odgovornost
Poeljne vjetine:
1. Java programiranje
2. Poznavanje GIS sistema
3. Apache Tomcat, IIS, ASP, Maven, Ant, JavaScript,
University degree
Personal Skills:
We offer you:
Encouragement of innovation
Opportunities to travel
Location:
Programer (m/)
RGT Co doo radi poveanja obima posla i irenja poslovne mree raspisuje konkurs za prijem
zaposlenika za sljedea radna mjesta:
Kategorija:
IT sektor
Radno mjesto:
PROGRAMER
Uslovi:
VSS
i.
ako se kandidati prijavljuje samo na jednu poziciju: konkurs naziv pozicije na
koju se kandidat prijavljuje! (Napomena: ukoliko subject u e-mailu ne bude odgovarao
traenim zahtjevima, aplikacija se nee razmatrati!)
ii.
ako se kandidat prijavljuje na vie pozicija konkurs vie pozicija! (Napomena: u
e-mailu navesti pozicije na koje se kandidat prijavljuje, u protivnom aplikacija se nee
razmatrati!)
3.
lino preuzimanjem i popunjavanjem formulara aplikacije za posao koju moete
preuzeti na recepciji Upravne zgrade grupacije Robot, Rajlovaka cesta 41, Sarajevo
Nepotpune prijave, odnosno prijave koje ne ispunjavaju navedene kriterije kao i
traene uslove nee biti uzete u razmatranje.
Lokacija:Sarajevo
Broj pozicija:1
Datum objave:23.01.2015.
Trajanje oglasa:30 dana (istie 22.02.2015.)
Senior PHP developer (m/)
Adriatic.hr
trai
Senior PHP developera
O nama
_____________________________________________________________________________________________
___________________________
Adriatic.hr je turistika agencija sa sjeditem u Splitu. Jedna smo od vodeih agencija u
Hrvatskoj koje svoje usluge pruaju on-line. Svjesni smo da svoj izvrstan i konstantan uspjeh
moemo zahvaliti ljudima koji predano obavljaju svoj posao. Buduim zaposlenicima nudimo
rad u mladoj, dinaminoj i multikulturalnoj radnoj okolini gdje e se osjeati dobrodolo.
Opis posla
_____________________________________________________________________________________________
___________________________
Traimo strunu, poduzetnu i odgovornu osobu koja e se pridruiti naem ICT timu od 15
strunjaka razliitog profila - web developera, dizajnera te administratora produkcijske,
komunikacijske i uredske mree.
Posao se obavlja iskljuivo u prostorijama agencije. Podruje rada ovisi o vaim strunim
vjetinama, dosadanjem iskustvu i interesima. U cilju nam je da radite ono u emu ste
najbolji i to najvie volite.
Neki od projekata na kojima rade nai razvojni timovi su
planiranje/razvoj/odravanje:
raunovodstvenog sustava,
HR sustava,
integracije alata za automatizaciju (build, testing, deploy, statika analiza, itd.) i dr.
snalaenje u JavaScriptu
navedeni poeljni uvjeti nisu neophodni, ali kandidatu pruaju bolju startnu poziciju
to nudimo
_____________________________________________________________________________________________
___________________________
stimulativna primanja
USLOVI:
potenje i odgovornost
timski rad
Obavezno znanje: C#
Mogunost prilagodbe
1 izvrioca,
Nudimo:
Mogunost napredovanja,
Obuka i usavravanje,
Fax:033/401-166 ili
Experience with web development using technologies like ASP.NET MVC, jQuery and
AngularJS
Experience with WCF web services as well as RESTful interfaces like MVC Web APIs
Proactivity with a focus on getting things done, strong attention to detail and ability
to produce high quality work within set deadlines
BONUS SKILLS:
Experience with relational database design and development, preferable SQL Server
API PERKS:
Software developer
We are looking for talented senior and junior level software developers to join our new team
in Sarajevo. You will be responsible for working with a group of developers and providing
technical expertise in a development of application components for enterprise level systems
including mobile, web, business processes, and database level development.
Required Skill Set
Good knowledge of the Microsoft .NET development platform, C#, and service
oriented development
2-3 years of experience developing and maintaining solutions in C#, ASP.NET MVC,
WCF, AJAX , T-SQL
Experience utilizing SQL Server for data storage in .NET based solutions
Good verbal, phone, and written communication skills in both English and Bosnian
HTML5
CSS3
JavaScript
JQuery
Photoshop
Oekivanja:
Rad iz kancelarije Otto Ziegler ili samostalni rad sa mjesta odakle obino obavljate
svoje poslove kao samostalni djelatnik ili firma
Ukoliko posjedujete traene vjetine i iskustva, vae prijave, uz priloenu biografiju i portfolio
moete poslati putem opcije PRIJAVI SE NA OGLAS
Lokacija:Sarajevo
Broj pozicija:1
Datum objave:09.01.2015.
Trajanje oglasa:30 dana (istie 08.02.2015.)
SEO/Analytics
ta se od vas oekuje:
Testing, debugging
Stalno zaposlenje
Motivirajuu platu
Napomena:
Uz prijavu obavezno priloziti Portfolio. Prijave bez 5 samostalnih radova se nee uzimati u
razmatranje!
Ability to establish procedures and develop tools that are used by both the
Engineering and Operations teams
Strong technical ability to drive product releases across different systems and teams
BONUS SKILLS:
API PERKS:
Europe.
REQUIREMENTS:
Proactivity with a focus on getting things done, strong attention to detail and ability
to produce high quality work within set deadlines
BONUS SKILLS:
API PERKS:
with us. We specialize in placement for long-term contract and permanent opportunities. We
are committed to helping our employees achieve their career success.
Lokacija:Sarajevo
Broj pozicija:1
Datum objave:05.01.2015.
Trajanje oglasa:26 dana (istie 31.01.2015.)
Software Build and Release System Developer (m/f)
DESCRIPTION:
Authority Partners is looking for a Software Build and Release System Developer for our
office in Sarajevo. As a Software Build and Release System Developer, you will provide
support for developing build scripts and tools that will improve the efficiency of the
development and build process, as well as produce software designs based on approved
architecture and requirements, write code using C# and other technologies to build system
components, as well as deliver products within an aggressive schedule.
REQUIREMENTS:
Experience with relational database design and development, preferable SQL Server
Ability to establish procedures and develop tools that are used by both the
Engineering and Operations teams
BONUS SKILLS:
API PERKS:
REQUIREMENTS:
Experience with relational database design and development, preferable SQL Server
Experience in managing security and configuration for TFS projects (customize TFS to
meet project needs, Sprint/Scrum Setup, Work Item Statusing, Defect Tracking,
Dashboards, process template modifications and custom TFS controls)
BONUS SKILLS:
API PERKS:
DESCRIPTION:
Authority Partners is looking for MS SQL Database Developers for our office in Sarajevo.
Developers will produce software designs based on approved architecture and requirements,
work on database server and application tools, as well as database structure. Furthermore,
they will implement and maintain database security.
REQUIREMENTS:
BONUS SKILLS:
API PERKS:
DESCRIPTION:
Authority Partners is looking for Senior Systems Engineer for our office in Sarajevo.
Engineers will identify and solve problems of software, hardware, local area networks, as
well as perform audits of systems and software. Furthermore, they will manage and monitor
LAN/WAN network service and draft and maintain related documentation and processes.
Systems Engineers will recommend and acquire equipment replacements and upgrades, as
well as introduce and integrate new technologies.
REQUIREMENTS:
BONUS SKILLS:
API PERKS:
BONUS SKILLS:
API PERKS:
DESCRIPTION:
Authority Partners is looking for C# .NET Developers for our office in Sarajevo. Developers
will produce software designs based on approved architecture and requirements, write code
using C# and other technologies to build system components, as well as deliver products
within an aggressive schedule.
REQUIREMENTS:
Experience with relational database design and development, preferable SQL Server
BONUS SKILLS:
API PERKS:
Project Manager
Project Manager
retrospective reporting, as well as obtain necessary information for the team from all related
sources. Furthermore, they will configure projects, resources and task types, work on
removing all obstacles for team productivity, as well as track and report team and project
status.
REQUIREMENTS:
BONUS SKILLS:
API PERKS:
Datum objave:23.12.2014.
Trajanje oglasa:39 dana (istie 31.01.2015.)
Business Analyst
Business Analyst
BONUS SKILLS:
API PERKS:
Professionals who possess integrity, dedication, teamwork, and the desire to learn and grow
with us. We specialize in placement for long-term contract and permanent opportunities. We
are committed to helping our employees achieve their career success.
Lokacija:Sarajevo
Broj pozicija:1
Datum objave:23.12.2014.
Trajanje oglasa:39 dana (istie 31.01.2015.)