what should two years experienced guy should know?

Express the business side of your digital lives. Share your experiences and/or your comments regarding a business or organization.

No advertising.

Moderator: General Moderators

User avatar
raghavan20
DevNet Resident
Posts: 1451
Joined: Sat Jun 11, 2005 6:57 am
Location: London, UK
Contact:

what should two years experienced guy should know?

Post by raghavan20 »

let's say one is applying for a two years php-mysql-apache-linux(lamp) development job.

from an employer point of view, what would they expect the candidate to be aware of, mainly in regard to linux OS.

In other words, can anybody list the things that an employer would expect the candidate to know about Linux?


I would also appreciate if you can list the things for PHP & Mysql & Apache.

Thanks to all.
GM
Forum Contributor
Posts: 365
Joined: Wed Apr 26, 2006 4:19 am
Location: Italy

Post by GM »

I've worked with various databases for 4 years now, so from the databases side of things, I'd say the following list is probably about right for a couple of years experience:

SQL Queries: Expert
Indexing: High
Stored Procedures: High
Database Design: High
Normalisation: Be able to explain to level NF3 or 4
Backup Strategies: Basic Awareness
Replication: Basic Awareness

Obviously, it depends a lot on what areas you get exposed to in your daily work - For instance, I have always worked alongside an Infrastructure team who take care of Backups and Replication, so I wouldn't know too much about this aspect.

Edit: Changed wording slightly.
User avatar
raghavan20
DevNet Resident
Posts: 1451
Joined: Sat Jun 11, 2005 6:57 am
Location: London, UK
Contact:

Post by raghavan20 »

thanks GM, can you tell me what you actually meant by high proficiency in indexing...you mean normal indexing, full text indices?
GM
Forum Contributor
Posts: 365
Joined: Wed Apr 26, 2006 4:19 am
Location: Italy

Post by GM »

raghavan20 wrote:thanks GM, can you tell me what you actually meant by high proficiency in indexing...you mean normal indexing, full text indices?
Yeah... it's a bit vague, sorry. I mean that to include stuff like knowing the types of indexes available, and understanding when to use them to improve query performance. Included in this area should be knowledge of how to understand and act upon information given by the MySQL "EXPLAIN" queries.
User avatar
onion2k
Jedi Mod
Posts: 5263
Joined: Tue Dec 21, 2004 5:03 pm
Location: usrlab.com

Post by onion2k »

It's impossible to say. For someone who's work as part of a large team I'd expect them to be extremely proficient in whatever they were tasked with (eg, database interaction, object oriented coding, etc), but I would realise they'd have some weak areas. On the other hand, if they'd been at a small company writing sites as part of a small team (3 people or fewer) I'd expect them to have a good grasp of everything but not necessarily be an expert in anything.

2 years isn't very much. I'm coming up to 10 years web development experience and I'm still learning.

At a minimum I would hope they'd be able to tackle everything necessary to get a site up and running:

Database design to a competent level
SQL queries (including joins, subselects, basic indexing)
Writing scripts for database interaction
Writing front end display code
Writing basic documentation

At 2 years experience I would also hope the candidate is beginning to learn good business practises such as the importance of a specification, good documentation, logging of work, sign offs, code reviewing, and so on.
User avatar
raghavan20
DevNet Resident
Posts: 1451
Joined: Sat Jun 11, 2005 6:57 am
Location: London, UK
Contact:

Post by raghavan20 »

At 2 years experience I would also hope the candidate is beginning to learn good business practises such as the importance of a specification, good documentation, logging of work, sign offs, code reviewing, and so on.
Thanks GM again and onion2k. onion2k, what do you mean by sign offs and how do you really log your work...in the sense, what are the things you do log? in code reviewing, do you mean refactoring?

guys, i would be very grateful if you can tell me the requirements for linux; this is the area i feel i am weaker when compared to others so I have to work on this.
User avatar
onion2k
Jedi Mod
Posts: 5263
Joined: Tue Dec 21, 2004 5:03 pm
Location: usrlab.com

Post by onion2k »

raghavan20 wrote:onion2k, what do you mean by sign offs and how do you really log your work...in the sense, what are the things you do log? in code reviewing, do you mean refactoring?
Signing off - Reviewing a site with the client and getting them to agree that it's completed.

Logging work - Filling in a timesheet, adding things to a changelog, maintaining versions .. that sort of thing. If a client asks "When was this feature added?" or "Why am I being invoiced for work on this date?" you should be able to go to a log and tell them exactly what they need to know.

Code review - Sitting down with another developer (or a group of developers) and going through the code you've written with you explaining what you did, why you did it, and possibly optimising/refactoring/rewriting sections if necessary.

What I'm getting at is that at 2 years experience you should be starting to see that there's more to a development job than coding.
User avatar
raghavan20
DevNet Resident
Posts: 1451
Joined: Sat Jun 11, 2005 6:57 am
Location: London, UK
Contact:

Post by raghavan20 »

thats good definition onion2k...thank you
User avatar
onion2k
Jedi Mod
Posts: 5263
Joined: Tue Dec 21, 2004 5:03 pm
Location: usrlab.com

Post by onion2k »

raghavan20 wrote:thats good definition onion2k...thank you
You should also note that some managers, like the one I worked under prior to my current position, believe that specifications, documentation, etc, are pointless. He was of the opinion that any aspect of coding that isn't directly charged to the customer is a waste of time that could be spent coding and earning the company more money. Going to an interview and saying you're interested in writing better software with good documentation would actually lose you the job.

Mind you, if you ever meet a manager like that I suggest you run away quickly. It was a nightmare.
User avatar
Chris Corbyn
Breakbeat Nuttzer
Posts: 13098
Joined: Wed Mar 24, 2004 7:57 am
Location: Melbourne, Australia

Post by Chris Corbyn »

If I was interviewing I'd expect the following at minimum:
  • Solid understanding of how to setup and install PHP with a web server
  • A good understanding of OOP; though at 2 years, not necessarily over advanced
  • Able to debug logic errors quickly (I'd test them on this)
  • Ability to build complex queries involving INNER and LEFT joins
  • Capable of building complete web pages though no more than basic HTML knowledge needed
  • Capable of writing strong documentation (I'd want to see some, and the code it represents)
  • A good understanding of the layout of a linux filesystem
  • Needs to be comfortable working on command line
  • Must be able to put across ideas and explain technical situations clearly and concisely (wait until interview for this)
  • Must be able to estimate timescales for work within a fair margin and stick to schedules
  • Knowledge of version control systems... not strictly important to know how to use one since we can teach this
User avatar
Chris Corbyn
Breakbeat Nuttzer
Posts: 13098
Joined: Wed Mar 24, 2004 7:57 am
Location: Melbourne, Australia

Post by Chris Corbyn »

onion2k wrote:
raghavan20 wrote:thats good definition onion2k...thank you
You should also note that some managers, like the one I worked under prior to my current position, believe that specifications, documentation, etc, are pointless. He was of the opinion that any aspect of coding that isn't directly charged to the customer is a waste of time that could be spent coding and earning the company more money. Going to an interview and saying you're interested in writing better software with good documentation would actually lose you the job.
Pathetic. They'll end up with crap code if they don't want somebody who cares about that stuff. Writing documentation often helps when refining code anyway. You've had a lucky escape if you get turned away by one of these employers 8O
User avatar
onion2k
Jedi Mod
Posts: 5263
Joined: Tue Dec 21, 2004 5:03 pm
Location: usrlab.com

Post by onion2k »

d11wtq wrote:
  • Solid understanding of how to setup and install PHP with a web server
You should have some idea about what's going on in php.ini, but actually installing it isn't really a requirement in my opinion. It's not something that happens very often, and it's not really a developers job anyway. It's something a sysadmin should be doing. That said, if you do have knowledge of it that's certainly not a negative.
User avatar
raghavan20
DevNet Resident
Posts: 1451
Joined: Sat Jun 11, 2005 6:57 am
Location: London, UK
Contact:

Post by raghavan20 »

when we developed the website for our company, we wrote code to make it work. but many functions were redundant, not properly documented and cluttered.


when website went stable, we went on centralizing things and detailing long processes like checkout and others. it is quite good, atleast now anybody can see what is happening eventhough it might be a bit tough to understand the code easily.

i do appreciate d11wtq list and thank him especially because most of the times i post something related to linux or DB, he is there to help.

it is good to know that you told one should know php.ini. do you want people to know httpd.conf & my.conf. in linux, what are the things you would want the developer to know in /etc? do you also expect him to know simple bash scripting? what about dealing with mail things like postfix configuration?

EDIT: anybody would expect a developer to know & use most of the design patterns?
User avatar
onion2k
Jedi Mod
Posts: 5263
Joined: Tue Dec 21, 2004 5:03 pm
Location: usrlab.com

Post by onion2k »

raghavan20 wrote:EDIT: anybody would expect a developer to know & use most of the design patterns?
I hope not.. ;)
User avatar
feyd
Neighborhood Spidermoddy
Posts: 31559
Joined: Mon Mar 29, 2004 3:24 pm
Location: Bothell, Washington, USA

Post by feyd »

onion2k wrote:
raghavan20 wrote:EDIT: anybody would expect a developer to know & use most of the design patterns?
I hope not.. ;)
I agree with onion; furthermore I would say that they should understand a few patterns, probably using two or three in their work. They should have a decent grasp of OOP; at least the basic understanding of when and where it's useful and when and where it's not useful. They should be able to explain that too.

Depending on previous experience with other languages their understanding of higher level concepts should be much greater.
Post Reply