Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I’m a self-taught SQL developer that has worked for small to mid-sized companies. Most of my experience has been writing SQL statements for reporting, data scrubs, and never in a formalized IT department. For my last job I planned and executed a full migration and wrote all of the new business processes and trained end-users.

For the most part I’m used to being the expert when it comes to developing database solutions, but this is only because no one in the room ever knew anything about databases. Now I’m working with a team of developers as an SSIS interface developer. For the most part it’s not rocket science but I’m finding it hard to get up to speed. There is a lot going on in the database and the packages are we’re developing are pretty complicated. I have spent much of my first month studying the system rather than coding. Is this normal? If so how long will it be before I’m being productive and contributing in a meaningful way. I’m used to hitting the ground running and being able to contribute from the get-go.

How long does it usually take to bring a new hire up to speed?


migration rejected from Sep 4 '13 at 18:28

This question came from our site for professional and enthusiast programmers. Votes, comments, and answers are locked due to the question being closed here, but it may be eligible for editing and reopening on the site where it originated.

closed as primarily opinion-based by gnat, Dan Pichelman, MichaelT, World Engineer Sep 4 '13 at 18:28

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise.If this question can be reworded to fit the rules in the help center, please edit the question.

What tools are you using? I'm not to familiar with the SSIS interface, but presumably you're stepping outside of your SQL territory. – Philip Jul 26 '11 at 16:49
Heh, from the title, I feel obligated to give the standard adult trip response, "We'll be there in 15 minutes." ;) – John Gaines Jr. Jul 26 '11 at 17:04

Taking a month or so to get up to speed is pretty normal. It's hard to say how long it'll take you to be ready, without seeing your codebase and working with your team a little, but yeah, this is pretty ordinary when you end up in a team of competent developers.

If you want to speed up the learning curve, try to actually solve some problems in the codebase. Start with simple ones, and then work your way up to harder ones. Digging through the code and finding where you need to change things will help you familiarize yourself with the way things work pretty quickly.


SSIS is very complex and powerful and not very friendly to the person coming from it from the SQL side of the world. It took me a solid year to get comfortable with it and I have been querying databases for most of my career (I'm in my 50s). StackOverflow has a tag for SSIS questions and you may find it helpful to read them. The Expression builder was particularly foreign to me becasue it is for far from SQL Syntax. DAta types were hard as well but I'll give you a list I have of data type mappings which will help:

SQL Server 2008 Data-type   SSIS Data-type
        bigint                      eight - byte signed integer [DT_I8]
        binary                      byte stream [DT_BYTES]
        Bit                         Boolean [DT_BOOL]
        tinyint                     single - byte unsigned integer [DT_UI1]
        Datetime                    database timestamp [DT_DBTIMESTAMP]
        Decimal                     numeric [DT_NUMERIC]
        real                        float [DT_R4]
        Int                         four - byte signed integer [DT_I4]
        Image                       image [DT_IMAGE]
        Nvarchar or nchar           Unicode string [DT_WSTR]
        Ntext                       Unicode text stream [DT_NTEXT]
        Numeric                     numeric [DT_NUMERIC]
        Smallint                    two - byte signed integer [DT_I2]
        Text                        text stream [DT_TEXT]
        Timestamp                   byte stream [DT_BYTES]
        Uniqueidentifier            unique identifier [DT_GUID]
        Varbinary                   byte stream [DT_BYTES]
        Varchar or char             string [DT_STR]
        Xml                         Unicode string [DT_WSTR]
        Date                        date-only [DT_DBDATE]
        Time                        time-only [DT_DBTIME]

If it helps any, I know someone who was interviewed for an ETL position using SSIS and the interview question was, "What do you find most annoying about SSIS?" The idea was that if you didn't find it hard to use and annoying, you probably had not really used it.

Hang in there.


I don't think your time frame is off in getting up to speed, but start writing code or practice building whatever it is you're going to create. You need to go from understanding to having some fluency in your development. It's not going to happen by studying (at least not for me); you need to be doing. Get access to a development environment or preferably something separate where you don't have to be afraid of breaking anything important.


I heard that the break-even point for a standard new developer after school, at a typical job at a typical corporation is about half a year after employment - that is when value of contributions to the company's "production" outweights costs of employment. (another half a year to return the debt of the first half, and only then the company actually starts earning money on the employee) - that was a guideline to estimating if a company is profitable, basing on its turn-over rate.

Experienced employees are expected to get up to speed faster, but still I'd say a month for a database expert is pretty impressive.

Wow! Thank you all for your responses. You all have given me the sense that I am on track and that I need to be patient. I'm learning that I have a lot to learn. Which is good; otherwise I would be board out of my mind. Definitely looking forward to being a regular around here ;-) Thanks again, ~C – user863768 Jul 26 '11 at 19:58

From your description of your past experience, it could take a lot longer "than normal" as it sounds like you have little to no formal programming experience. There's a pretty big difference between writing queries and contributing to the database layer of a major application.


Not the answer you're looking for? Browse other questions tagged or ask your own question.