Tag: career

  • The Battlefield of Your Career

    Jeff Atwood has had quite a bit of success in his career, having been a founder of StackExchange and Discourse. He’s a fellow alumnus of the University of Virginia, along with Alexis Ohanian. Both of them have had a higher profile than me, and I admire what they’ve accomplished. I also think they’ve both been advocates for the technology industry, helping and advising others on how they can succeed in their own careers.

    Jeff has been writing interesting posts about hardware and software for years, but the latest one struck me. It’s called Learning on the Battlefield, and it has a lot of the same advice that I recently gave someone. In the post, Jeff notes that approaching your software career is like learning on the battlefield. It’s like making weapons and coming up with tactics. You really need to test them on the battlefield.

    Note, I wouldn’t expect that this means we test ideas in production, but rather, that we do test them in a live way, actually using the software. In QA, of course.

    Jeff notes that the work of building software is more important than schooling. I agree. I also think that the closer you can get to simulating work, the better off you are when you interview, or even when someone examines your body of work. His advice is to get an internship, go to user groups, build OSS, publish articles, and blog.

    All of these things are raising your brand. That’s a lot of what I’ve been writing and speaking about for over a decade. It’s the advice I gave someone recently who wanted to not build software, but become a DBA. Do the work, set up a test lab at home, in Azure or AWS, and then write about it. Blog about what you learn, how you do things, what others advised you about, and even the mistakes you’ve made.

    Don’t be perfect, don’t try to show a hiring manager you know everything, but rather show them that you know some things and can learn others. We all make mistakes, even those of us that blog a lot. We can write about mistakes and still impress people.

    Make your job search, your career advancement, or your desire for a raise/promotion/project, a battlefield. Do things and share your experience. Tell us about your first year of something, and more importantly, learn to practice communication. Add this to your CV/resume as a body of work, and I am sure that you will find it helps your career.

    Steve Jones

    Listen to the podcast at Libsyn, Stitcher, Spotify, or iTunes.

  • OLTP Star, Snowflake, and Galaxy Schemas

    This is part of a series on my preparation for the DP-900 exam. This is the Microsoft Azure Data Fundamentals, part of a number of certification paths. You can read various posts I’ve created as part of this learning experience.

    There are types of schemas the exist in data warehouses. This topic is definitely on the exam.

    OLTP/Relational

    The type of schema that many of us work with is the standard OLTP or relational model. We have lots of transaction tables, most should have a PK, some of which have PKs. The schema expands to meet different needs and can have lots of entities.

    As an example, here is a view of the AdventureWorks database.

    adw_er

    This isn’t fundamentally different from the schema types below, but there isn’t a central, or two central, tables here. Instead, we have a lot of different groups of tables. The structure is designed for normalization, and usually has lots of tables compared to a data warehouse.

    Star

    The star schema is often used in data warehouses. The name comes from the fact that the table arrangement looks similar to a star. There is a central fact table, which has some details of the main data, often something like sales, and a lot of foreign keys (FK).  The fact_sales_order is the fact table below.

    Then there are supporting tables around the fact table, linked by the FKs. These are the dimension tables, and contain details about a specific dimension or area. In the image below, we have date, employee, store, and other dimensions tables.

    5690_create-star-schema-data-model-using-microsoft-toolset.028

    This is a somewhat de-normalized structure, as the primary purpose is to report on a set of facts.

    Snowflake

    This schema builds on the star schema. Here there is still one fact table (Sales below), but the dimension tables have their own dimension tables, providing more details. Essentially, the dimension tables are normalized. An example is the Employee dimension, which has a linked Department dimension.

    Capture-163

    Galaxy

    The galaxy schema expands with a second fact table. In the image below, we have the sales and purchase as fact tables. There are dimension tables, which can be linked to one or more fact tables.

    Galaxy-Schema

    It isn’t that important you know how to build these schemas or design the entities for the DP-900 exam, but you do need to recognize the structures.

  • Boost Your Career with #SQLNewBlogger

    A few years ago Ed Leighton-Dick started the #SQLNewBlogger challenge. He asked people to start writing about their career and building their own brand. I thought it was a great idea and I’ve been continuing the challenge on my own blog, writing posts and also including a short note on the effort for me to produce posts.

    It’s early 2022, and if you haven’t been blogging, and you want to grow your career, start writing. Set up a blog and produce some posts. You will build communication skills, you will showcase your knowledge, and provide potential employers with some due diligence about why you would be a good addition to their team.

    Think about tagging these posts with #SQLNewBlogger as well. You’ll promote these alongside other people’s posts and perhaps will find yourself a new, better position this year.

  • Passed DP-900–A Review

    This is part of a series on my preparation for the DP-900 exam. This is the Microsoft Azure Data Fundamentals, part of a number of certification paths. You can read various posts I’ve created as part of this learning experience.

    I passed the DP-900 exam. I did well, though I likely over-prepared.

    20220131_135452

    I have typically been a good test taker, but I’m nervous about them, especially when they cost money. I did well on most finals in college, but was always very nervous. For most of these exams, even though my employers have paid, I’ve been worried.

    This post looks back at the things I did, building on my prep post.

    Final Prep

    Since this was for work, and they’d pay for it, and because I wanted to review things, I got access to the Official Microsoft Practice Test. This is US$99 for 30 days or a bit more for 60 days.

    Side note: I once worked for an education company in the early 2000s that partnered with MeasureUp and I had access to these tests.

    I purchased this about a week before I thought I’d take the test. I’d been lightly going through the courses and reading docs on and off for a few weeks, usually about an hour every few days. I took the first practice test, which simulates the exam (49 questions, timed) and got a 650. Not good enough.

    I went back through some of the self-paced training quicker, and then I dug into books online in a more intense fashion, for about an hour a day for a few days. I then retook the practice test and got to a 780. Passing, but not great.

    I consistently struggled with CosmosDB and Synapse, and a few Power BI and Azure Storage items, so I concentrated on those items.

    The week I’d orginally planned to take the test was spent taking a practice test every day, and then using the mistakes I’d made to focus on some new concepts. Once I passed 2 days in a row, I scheduled the exam. I spent the next 4 days taking practice tests and studying.

    One of the best things I did was get a notebook and a pen. I then watched John Savill’s Exam Cram and took notes by hand. I find that helps me remember things. I paused in a few areas if I wasn’t sure I knew what he was talking about and looked up details in MS Docs.

    The morning of the exam I went to the gym, which helps me relax. I then got a cup of coffee and took the practice test, but every question. All 150. I scored a 970, and thought I was ready.

    The Actual Exam

    While you can take this at home in a room by yourself, I wasn’t confident I could get by without someone interrupting me, or something going sideways at the ranch. I get interrupted regularly as people forget I’m working or don’t realize I’m on a call. I scheduled this at a local test center that I’ve used for years.

    If you haven’t been in a test center, it’s usually fairly strict. This one does FAA/Pilot testing, so they are very careful. The things to know:

    • Nothing goes in to the exam room with you (except mints).
    • You need an ID, they take a picture, have you digitally sign an MS doc, and paper sign a couple waivers as well.
    • Mask the whole time, which isn’t great with my readers
    • ID, watch, phone, even lip balm all get locked up. I take the key into the room.
    • I grabbed a few extra mints because I’m nervous.
    • There are dry erase markers and pens for notes, and ear muffs for quiet. Monitor, keyboard and mouse on the desk, cube partitions separating everyone and cameras above. In my center there are 8 desks and at least 3 cameras watching you.
    • I’ve never taken a break, but I also know to use the bathroom before going in (again, nervous). I did have an issue once, raised my hand, and within 3-4 minutes someone came in to check on me (computer froze).

    Exam Format

    The format is this:

    • 3 minute survey of your experience (how confident are you about azure rdbms, analytics, etc.)
    • 45 minutes for the exam, 49 questions. You can mark questions for review and then a list of these appears at the end that you can go back and change answers.
    • A mix of multiple choice (radio buttons), select x (2 or 3 answers required), lots of “click yes for true, no for false”, a few drag and drop from a list of answers.
    • No case studies, no free text entry
    • 3-4 minutes for feedback on specific questions. I thought a few were strangely worded, so I left feedback on some.

    The practice test mirrors this well.

    Exam Coverage

    I can’t disclose the questions, but I can give you a few things to think about. Note I got 49 of who knows how many questions. I would guess there is a pool of a few hundred, but I don’t know.

    If you look at the skills measured, I would say this about the major areas:

    • Describe core concepts – I had at last 3, maybe as many as 7 questions directly in this area. These are fairly easy to answer if you know what these are. I’ll do a couple prep posts in these areas.
    • Describe working with Relational Data – Again, I find the workload stuff fairly easy, and I had 2-3 questions here. The PaaS, IaaS stuff is important and I’ll post things that matter. The understanding of the basics of Azure SQL family, Synapse, and how you might “accidentally” work with PostgreSQL/MySQL/MariaBB matter. There also were some light questions on concepts around tools, connectivity, firewalls, and CLIs. Again, I’ll post prep. The T-SQL specifics were easy, a couple questions there.
    • Describe work with non-relational data – This is a weak area for me.I think some of this is not being completely confident on how/where I use different NoSQL structures, and the nomenclature being strange. Knowing the types of data stores and when to use them matters. Practice test helped here. You do need to know a good outline of CosmosDB and the Azure Storage structures. Glad I spent time here.
    • Describe Analytics workload – Also a weak area. I don’t know Synapse well, and I think the docs are poor. They tend to be written, in my opinion, assuming you know some things. They don’t describe things well, and to be fair, Synapse appears to have evolved a lot and quickly. You need to know a bit about when/where you use tools, understand some concepts about ADLS Gen 2, Databricks, Synapse, and HD Insight. A lot, but this is high level, not in the details. Know conceptually where you use ADF with these tools. The PowerBI stuff means you better know the What is Power BI? and the Basic Concepts docs well. Again, I’ll do a prep post.

    My Recommendations

    First, make sure you could explain each concept in the skills document to a friend, every single line, with about 3-4 minutes of talking. Not a highlight, but that you’d sound like you had a grasp of each area. If not, dig into docs.

    Second, if you want a good outline of data services on Azure, this helps you focus. You need to know the storage stuff, the relational options, and the analytics stuff. I felt like I learned a lot in about 3 weeks of prep. Not a ton each week, but regular. Really this was about 10 days of constant prep, something every day, and a few weeks of sporadic prep.

    Learning how to dig into and get a level of detail was tough, but the practice test was worth the $$$ to me. It helped me focus. Jon’s cram video, about 90 minutes, was a good place to start. I wish I’d done that first, taken notes, and then looked up weak areas.

    Hard to determine weak areas without testing. Again, practice tests help. I can’t mimic the exam without worrying about NDA, but I’ll try to give you a set of things to know in various posts.

    Work with a friend. I’m thinking to do some prep classes with my local user group. If you’re interested, let me know. Maybe I’ll just do some online recordings. Other people helped me, and I can give you a set of things to learn.

    Lastly, over prepare a bit. Don’t spend months, but think of this like a final exam from high school. Learn some things, practice a bit with the online stuff, and then increase your focus as the exam date approaches.

    If you have questions, ask. No specific questions or answers disclosed, but I’ll try to help where I can.