My Developer Hardware

As a developer, the choice of hardware to develop on is important and very personal. Some work very stationary, others are very mobile. Some work on lightweight websites, others work on heavy data engineering projects. Me personally, I work on a wide range of projects, starting from lightweight Jekyll-based websites such as this one to heavyweight data engineering projects. with Kubernetes, Kafka, Docker and JVM-based projects. Therefore, my development tools range from lightweight tools such as VIM or Sublime Text to more heavyweight IDEs, such as Intellij IDEA. So I need a powerful machine that can handle some load without slowing down and able to achieve relatively fast compile times. In terms of mobility, I work about 3 days from home and 2 days in my customer’s office, so I need a system that I can take with me.

These requirements brought me to the following laptop:

Dell XPS 17 9700 (2020 edition)
2x16GB dual-channel 3200MHz memory
1x512GB M.2 SSD (OS)
1x1TB M.2 SSD (programs/data)
17inch Full HD screen

The full setup

My primary machine is my laptop, but regularly I also use my desktop PC (e.g. to run a development cluster). When sitting at my desk with my laptop, I want to use the same keyboard, mouse and monitor that I use with my desktop. That’s where my USB-3 switch comes in, which is plugged into both my laptop and desktop, and allows with a simple press of a button to switch its output to either device. It’s not a complete KVM (Keyboard-Video-Mouse) switch, since my monitor can also switch between HDMI and DisplayPort with a press of the button, which was sufficient for me. It has four slots, so I use one other slot for my Yubikey.

I also use an usb-c Dell docking station, so that I only have to plugin one usb-c cable in my laptop. Charging also happens through this docking station, so while certainly not cheap, almost cost the same as buying all ethernet/usb/HDMI/charging adapters separately.

Home developer hardware setup

The Peripherals

Keyboard

I’m using a Ducky One 2 Tuxedo mechanical keyboard with Cherry MX Brown keys. It’s my first mechanical keyboard and I wouldn’t want anything else anymore. Also, I like how the design not only looks nice, but is also functional, by using various colors to divide the keyboard into segments.

Ducky One 2 Tuxedo keyboard

Webcam

Because the webcam on the Dell XPS 17 is of really poor quality, I bought a separate webcam. After evaluating several, I decided on the Elgato Facecam Full HD streaming camera. Contrary to other webcam vendors, Elgato’s webcam software is outstanding. After having used it now for a while, I can only confirm this.

No MacBook Pro anymore?

I’ve been a MacBook Pro user for about 7 years. Back then I switched to Mac mostly for OSX. I came from Windows, and the command-line support was truly awful. So in OSX I found a UI that was as stable/boring/easy to use as Windows, and a command-line that was as powerful as on Linux. I immediately loved the experience, including the developer ecosystem that existed for it.
However, during the last two years, I started to dislike some things about the system:

  • hardware design: Apple is famous for how good their devices look, but what bothers me is what’s inside the device. Repairability hasn’t been their strength or focus. Having a battery glued to the system, a component that you need to change at some point, is poor design. Also, the airflow within the system was less than optimal, leading to higher than necessary temperatures and fan noise that turns heads in the office.
  • hardware quality: After two years, my screen’s coating peeled off. The keyboard fiasco of newer MacBook Pro’s also decreased my confidence in Apple’s hardware capabilities.
  • upgradability: my 2015 MacBook Pro came with 16GB and that was also its limit, so I couldn’t easily increase it to 32GB.
  • service: I have a business to run, so sending my laptop in for a two-week repair just isn’t an option.
  • ecosystem control: I could gradually see Apple put up more and more restrictions and rules upon applications, given themselves more control over the ecosystem. I like control over the applications that I install, without the OS vendor deciding it for me.

Around the time I had to decide on a new system, Apple was about to launch their M1 chip, which is their own custom chip. Initial reviews were very positive, both on the performance and cooling front, but I needed a longer term confirmation that Apple is again on track to building quality hardware. Also, I didn’t want to be a guinea pig for this new hardware, which could have a significant impact on the software that I typically use.

So I started looking for a non-Apple system, hoping that it would solve most of the issues that I had with Apple. Spoiler: It solved several of my issues, but it also came with a bunch of other issues… see below for more details on my new system.

My Dell (XPS) experience

The Reviews - watch out…

I read and watched a bunch of reviews before deciding on this system, which were very positive across the board. Regularly, the reviews mentioned this system to be an ideal MacBook Pro replacement and none of them mentioned any major common deficiencies. Turns out, you can’t trust online reviews these days, as most are based on a short-term experience and are probably paid for. Let’s just say my experience was quite different.

The Positive

I do really like quite a few things about this new system:

  • The system really looks as good as a MacBook Pro. The screen’s bezel is next to nothing, providing a beautiful screen. The area around the keyboard looks beautiful, but is a real fingerprint magnet. Overall, the system also feels very sturdy, while still being very thin.
  • The performance is exactly what I expected of the hardware. The system is also rather silent most of the time and doesn’t get hot.
  • The modularity and repairability of this machine is great, in part because of the service Dell provides, which forces them to build systems they can easily repair. This allowed me to order the system with a lower spec (memory and storage), which I manually upgraded. This was cheaper than buying the higher spec machine, and the upgrade was very easy to execute.
  • Dell’s support is pretty exceptional. I had to have the screen and motherboard replaced and a service technician came to my home the next day to perform the replacement (about half an hour’s job). This is quite a difference with Apple’s service.

The Issues

Sadly, the system had more issues than I would’ve hoped for, certainly in those first few months. Some of these issues were also Windows-related, but issues which I only experienced on this Dell system and not on my custom-build desktop PC. Most of these issues have been resolved by now, but I’ve left them here as documentation for those who might still run into them, and because it also gives you an idea about what you might encounter when buying an XPS system.

The screen issue

When I opened up my new laptop, I immediately could see issues with the screen. For a few seconds during startup, half of the screen would go black and then return to normal. Also, the lower-right half part of the screen would have significant vertical light bleed, with a flickering being visible. I could temporarily solve the issue by disabling & enabling the Intel UHD Graphics adapter (Device Manager -> Display adapters), but it wasn’t a permanent solution. I could also see this issue when I was in the system’s BIOS, so it clearly wasn’t a Windows problem.

Dell XPS black screen Dell XPS screen bleed

Resolved: I contacted Dell support, provided them all the information which I gathered, and they scheduled an on-site technician for the next day. The technician came over to my home, replaced the screen for a new one in about 30 minutes, and it solved the issue. So on the one hand, this kind of issue shouldn’t have happened with a new system, on the other hand the support and repair process was smooth and exactly what I would expect from business support.

The Motherboard issue

After about 4 months of use, the motherboard broke down. When trying to boot the laptop, the Dell logo showed up, and the fans boosted for a few seconds and then it powered down again. Basically, a No POST issue. I tried two things to fix the issue, but none of them worked:

  • a hard reset: I opened up the laptop, disconnected the battery connector and pressed the power button for about 15 seconds to drain any residual power. This can sometimes fix issues like this, but in this case, it didn’t work.
  • switched memory: I was using custom RAM modules, so I tried the original RAM modules to make sure it wasn’t related to bad RAM.

Resolved: In the end, I had to contact Dell’s technical support again. They figured it would be a motherboard issue and dispatched a technician the next day to replace the motherboard. Once they replaced the motherboard, the system could boot again into Windows with no data loss or reinstallation. One important remark, if you use Windows’ Bitlocker feature to encrypt your disk, note down the recovery keys somewhere because you’ll need them in a situation like this (luckily I did).
So summarizing, I was about 1.5 days without a system (issue happened during the weekend, called support on Monday morning, technician fixed the issue on Tuesday). So again, I can’t complain about Dell’s technical support. They’ve been excellent, too bad I need them this much. The last thing you expect to happen four months into using a brand new laptop is a motherboard failure, but I got lucky…

Waking up from sleep mode

The system regularly failed to wake up from sleep. During startup, Windows would show a blue screen and I had to restart it entirely.
On top of this, it would regularly wake from sleep automatically. One time, this happened when the laptop was in my backpack, fans blazing and very hot. This is really dangerous behaviour.

Unresolved: I haven’t found a solution for this and based on my research online, this seems to be a general issue with Dell XPS laptops. Somehow the Dell BIOS/software combined with the Windows “modern standby” mode doesn’t seem to work how it should. You can’t trust it to remain off while in sleep mode. So sadly my workaround is to use hibernate instead of sleep mode, and when putting it in my backpack always turning it off completely.

This was related to the new “modern standby” mode in Windows, but was made worse by Dell restricting certain options in the BIOS which would allow turning off modern standby mode entirely.
Dell has a pretty interesting document that goes deeper into Modern Standby on Dell PCs. One interesting Windows CLI tool mentioned in here is the powercfg /sleepstudy command. It can generate a detailed power state report of the last x days, which gives you some really interesting insights into how the system transitions between states and why.

Windows powercfg sleepstudy report

Or determine the top offenders, which are the processes/devices with the most active time during sleep. Windows powercfg sleepstudy report top offenders

So for me, the Intel Management Engine Interface came out on top. Based on some more research, The Intel Management Engine is apparently part of Intel’s chipset and is intended to stay on as long as the computer receives power, even when it’s turned off. So really, it’s not so weird that it comes out on top.

Touchpad issues

Most of the time the touchpad works as expected and can rival the one from Apple’s MacBook Pro. However, it will sometimes erratically record input. I still haven’t figured out why this happens.

Webcam quality

The quality of the webcam is worse than that of a 2015 MacBook Pro. It does the job for standard company meetings, but nothing more than that. I’m now using a standalone Elgato Facecam Full HD streaming camera, which I’m really happy about.

Charging issue

I use both a Dell charger and a Dell docking station to charge the laptop. On both chargers, it sometimes would refuse to charge the system, even while it detected the charger. The only solution was to re-plug the charger, after which the system would charge.

Resolved: Dell has pushed several firmware updates for the Dell docking station and software updates for my Dell XPS system, so probably this got fixed by one of them. Right now, this works flawlessly.

Conclusion

My initial journey with this new Dell XPS 17 system was pretty bad, having had to contact support multiple times and wasting quite a bit of my own time troubleshooting issues. Luckily Dell support was pretty good in my experience with handling the hardware issues. This next-day on-site support is a major plus compared to Apple.
When it’s up and running, it’s a powerful machine on which I enjoy working. Performance and cooling of the system have been great, and basic upgrades such as new RAM modules are easy. But given all the mentioned issues, and comparing it to my old 2015 MacBook Pro and recently the 2022 MacBook Pro, it just isn’t the same worry-free experience.

Actionable career advice,
in your inbox

Advance your career as a software engineer by regularly receiving my 15+ years of experience in your email inbox.

new advice & strategies to advance your career 🎓

exclusive content, not available on the site 🚀

updates on existing articles, with new insights! 💫

product updates and special offers 💥

    Unsubscribe at any time.