Tag: career

  • A Database Design Test

    I was watching a presentation recently on database design and the speaker talked about how he hires developers. These are full stack developers, for whom the database is a portion of their responsibility. One of the tasks he gives them is a short database design test, designed to get a rough idea of their knowledge of databases.

    The test is a short story, with a classroom/course/scheduling scenario. There are descriptions in some business terms, and the instructions ask the reader to to decide how to put entities together and link them. There is a sample unlabeled diagram with only a couple boxes. The diagram is meant to clue them in to the way to indicate relationships, and there are names of different structures in the test in bold. For someone experienced in databases, this would seem trivial as the entities are listed in bold, and the test is designed to be completed in 5 minutes. Extra points for not crossing any relationship lines.

    I found this to be a nice, short test to gauge a developer’s knowledge. The speaker noted that they didn’t worry too much about time taken, or the exact notation used in the digram. This is mostly a way to measure if an individual thinks in terms of entities and connections. This is part of a few tests used for a basic evaluation of how a developer solves practical problems, and avoids the trivia based examination used by many interviewers.

    I was intrigued since I’ve never been really asked to design anything and I’ve had quite a few jobs where that would be a portion of my job duties. No one has given me a scenario and asked me to produce an ER diagram. The most I’ve gotten is some theoretical questions on normalization, or what keys are. I wonder if I’m alone. For those of you reading this, have you ever had a design test of any kind in an interview? Can you disclose the types of questions or scenarios? When were you tested? It would be interesting to see if this is used by much of anyone.

    There seem to be so few ER diagrams in the real world, especially from vendors, who should always produce one for clients. I suspect that few people understand them, or even write them, even though they can be invaluable when trying to write reports and understand the relationships between different entities. Many ask, but could those people produce one? Or read it beyond realizing which field in table a connects to which field in table b? Let me know this week if you’ve been tested on your database design skills.

    Steve Jones

    The Voice of the DBA Podcast

    Listen to the MP3 Audio ( 4.1MB) podcast or subscribe to the feed at iTunes and Libsyn.

  • Your Job Description

    In every job I’ve ever held, there’s been some scope creep in my duties. No matter what I think my job is, I end up handling tasks in very different areas. While bartending, I’ve had to cook food a few times. While managing a network, I ended up performing some software development. As a DBA, I’ve assembled network cables. As a manager, I’ve had to arrange and setup dinner banquets for late working employees. Even at SQLServerCentral, I used to have to make sales calls when I expected to be more of a technical worker.

    That’s the sign of a good employee. Someone that pitches in and gets the work done as needed, doing their best if the task is out of their skill area. It’s what I’d expect from most employees, though I’ve never worked with a union. Rules might be different for union employees, though I’d hope most would pitch in in a crisis. I also think this is something I look for when I interview people. I hope to get the feeling from a candidate that they’d be willing to learn to handle tasks outside of their primary position.

    I was thinking about this as I read a post about job descriptions. It talks about the mess that many job postings contain, with a wide variety of requirements and duties. I think many of these descriptions, especially in technology are the result of too many chefs working on the final product. From what I’ve seen, most of the descriptions need a mythical candidate in order to meet all requirements. Companies will never find this person and instead compromise their choice based on who applies. So, always apply if you meet 50% of the requirements.

    This made me wonder about the descriptions that are out there. Some of them are really crazy, but I think some of the issue is there are people that want to make their jobs sound more important than they really are, just as they may do with their job title. Keeping this in mind, what would you say is your job description? Is that what you’d list in a job posting or would you add more or take away some of the items?

    I used to want a more important title, and a more complex job description as I was growing my career. These days I’m less concerned with pumping up my job, but I think that’s part of the cycle of a career. I’m curious where you are in your career and how you might describe what you actually do to others.

    Steve Jones

    The Voice of the DBA Podcast

    Listen to the MP3 Audio ( 3.8MB) podcast or subscribe to the feed at iTunes and Libsyn.

  • Three Days and a Notebook

    This is a short week of work for me, really just today before heading off to attend Microsoft Build 2017. I’ll spend the rest of the week watching Microsoft show off their latest tools, ideas, technology, and more at the developer’s conference. I’m not speaking (I think) and am looking forward to three days of learning, watching, and getting excited about building software that for the most part depends on data in some way. I’m not sure what will be presented, as the schedule hadn’t been posted as of the time I wrote this, but I’m sure there will be plenty of Azure and SQL to go with all the Windows and .NET sessions. I’m especially interested in ways that DevOps is making its way into the Microsoft stack and looking forward to seeing the creative solutions out there.

    I haven’t attended Build since it was the PDC many years ago. It’s been since the early 2000’s when I went to a few of these events as a software developer. I first saw Microsoft showcase XML tools in the late 90s and tablets a few years later.  I always enjoyed these shows and after a few years off was looking forward to going back. Then they cancelled the event before it was reborn as Build. I’ve been trying to schedule a trip for the last 4 years, but scheduling keeps getting in the way. I know, it’s a hard life, and I’m not complaining. It’s been disappointing for me.

    Last year I was actually offered the chance to go speak on behalf of Redgate at a session, and I did go, but with volleyball trips planned with my daughter, I was in San Francisco about 24 hours, saw 1/2 of the keynote and part of one session (besides my own) and then left. Not much of a Build event for me. I didn’t even have time to go through the HoloLens line and give it a try. However, I had a few days with my daughter, so I can’t complain at all.

    This year I didn’t have anything scheduled for May and got the chance to register early. I plan to try and leave my computer in the hotel room and work little. Instead, I’ll walk around with my notebook, jot down ideas, and just think a bit about software, my career, and where Microsoft is going. This will be my thinking time for the week. Actually, I haven’t had much thinking time this year, so I’m looking forward to the break.

    I rarely attend any events or training without having some sort of commitment or responsibility these days. I try to fit in a few sessions or a pre-con here and there, but training time and focused time on something other than work is rare. For the first time in many years, I’ll actually going as an attendee and doing the things many of you do at SQL Saturdays, SQL Bits, the Pass Summit, and other events. I’ll be learning, focusing, racing from session to session, networking, and hopefully overdosing on new technology.

    I’ll try to summarize notes in a few blogs, and maybe even give a short recap as an editorial one day, but this should be a fun technology week for me.

    Steve Jones

    The Voice of the DBA Podcast

    Listen to the MP3 Audio ( 4.5MB) podcast or subscribe to the feed at iTunes and Libsyn.

  • Thinking Time

    I’ve been fortunate in my career to meet a lot of different people with a variety of views on the world, career, technology, and more. I’ve learned a lot about various things by focusing on conversations with these people and getting alone time with them, just talking. This is one reason I make it a point to get a couple quiet, focused conversations with a few person at events, and I’ll usually bail out of dinners with more than 6 people. They’re just too chaotic and less attractive to me when I’d rather have an engaging chat.

    I was reminded of a few pieces of advice I’ve received in life while watching Jes Borland’s keynote at the Chicago Code Camp. It’s a nice talk, and worth a bit of your time to help you reset your view of the world and remember to choose the things that matter to you. Certainly Jes’ advice to learn to say “no” is some of the best advice I’ve ever learned in my life. I’m still trying to get better at this, but I am learning to let some opportunities go by and not agonize. Time is far and away the most valuable resource I have in life, and I value it more each day as I age.

    One of the best pieces of advice, though, came from @sqlandy. Years ago, as we were both working full time jobs and keeping SQLServerCentral going at night, he let me know that we were treading water, just doing the same things we’d been doing and thinking about driving our enterprise forward. He’d noticed the same problem at work, with so many people letting themselves get caught up in day to day tasks and not looking ahead. We end up worrying about getting a query done, or checking a server, or writing an email, updating our resume, getting dinner cooked, and we are not coming up with ways to improve their job, career, life, server monitoring, development habits, and more. We’re not actively moving in a direction that matters to each of us.

    Jes reminded me of the need for thinking time in her keynote. We all need some time that isn’t devoted or focused on a task, or a particular endeavor. We need time that let’s us just think about anything, or everything related to a topic. Unstructured time that lets our mind wander over possibilities, opportunities, or even evaluating some course of action. Time away from a keyboard, time to think about how you might change your world.

    I often find running or swimming is good time for me. Taking a known route, not worried about speed or pace, just plodding along and letting my mind wander. Sometimes I’ll even end up walking, or sitting by the side of the pool, just thinking because my body won’t move on automatic when I get deep in thought. I have sometimes tried to just sit and think, staring out the window, letting my thoughts take me where they will.

    Life is busy, and it’s easy to get caught up in all the demands on our time. It’s even easy to get caught up in trying to relax and focus on a task (cooking, playing games, etc.). Taking some time to think about a topic in an unstructured way, without any goal or outcome is important to help us evaluate and review where we are, and where we might want to go in some part of our life.

    Steve Jones

    The Voice of the DBA Podcast

    Listen to the MP3 Audio ( 5.5MB) podcast or subscribe to the feed at iTunes and Libsyn.