HN user

jamieiles

107 karma

Software professional and hardware tinkerer, author of the Oldland and s80x8 CPUs, makes low-level things work.

https://www.jamieiles.com

[ my public key: https://keybase.io/jamieiles; my proof: https://keybase.io/jamieiles/sigs/cDdOhhRPV8sgon8M8bWB5-J2SJAFg9F9RD_l_s1xlsI ]

Posts3
Comments28
View on HN

Nuvia | Software + Silicon + Systems | Full-time | REMOTE (US/UK/Canada) | https://nuviainc.com/

Nuvia is building the next generation of data center SoCs based on a custom core ARMv8. This is a ground up design addressing the performance, power and security demands of the data center built in a new way. We're hiring across the board on the hardware+software teams from CPU microarchitecture, SoC design, firmware and operating systems. Full listing of opportunities at https://nuviainc.com/careers. Excellent opportunities for those with experience in low-level security, operating systems and firmware to join a rapidly growing software team. The software that we're building will is based on industry standards and upstream first, we love open source!

Full-time, remote within US, UK

Ksplice is a key technology in Oracle's Linux offering and powers our engineered systems and public cloud, patching the Linux kernel, user-space and virtualization stack without any downtime. We're a distributed team of engineers forming part of the Linux and Virtualization group at Oracle with a passion for working on exciting technology, software engineering and all things Linux.

We're looking for a systems engineer to help scale as we continue to expand into the Linux stack, developing custom tooling and automation for patching thousands of kernels, hypervisors and packages to rapidly respond to security updates. This is a varied role that will see you building Python based tools to manage large numbers of virtual machines, writing C based patching and analysis tools and debugging hard problems in a variety of Linux distributions.

Required skills include:

  * Experience building complex systems in Python or other systems languages.
  * Strong understanding of low-level programming in C/C++ and associated tooling.
  * Experience of Linux virtualization solutions including KVM/libvirt+Xen.
Other useful skills include:
  * Experience developing the Linux kernel or other low-level applications.
  * Performance tuning and optimization.
  * Excellent problem solving and debugging skills.
  * Familiarity with configuration managment tools such as Puppet/Chef/Ansible.
  * Experience in developing cloud native solutions.
More information about Ksplice is available at http://ksplice.oracle.com/ and you can contact me by email at jamie.iles@oracle.com if you have any questions. Oracle is an equal opportunity employer.

Full-time, remote within US, UK, France

Ksplice is a key technology in Oracle's Linux offering and powers our engineered systems and public cloud, patching the Linux kernel, user-space and virtualization stack without any downtime. We're a distributed team of engineers forming part of the Linux and Virtualization group at Oracle with a passion for working on exciting technology, software craftmanship and all things Linux.

We're looking for a systems engineer to help scale as we continue to expand into the Linux stack, developing custom tooling and automation for patching thousands of kernels, hypervisors and packages to rapidly respond to security updates. This is a varied role that will see you building Python based tools to manage large numbers of virtual machines, writing C based patching and analysis tools and debugging hard problems in a variety of Linux distributions.

Required skills include:

  * Experience building complex systems in Python or other systems languages.
  * Strong understanding of low-level programming in C/C++ and associated tooling.
  * Experience of Linux virtualization solutions including KVM/libvirt+Xen.
Other useful skills include:
  * Experience developing the Linux kernel or other low-level applications.
  * Performance tuning and optimization.
  * Excellent problem solving and debugging skills.
  * Familiarity with configuration managment tools such as Puppet/Chef/Ansible.
  * Experience in developing cloud native solutions.
More information about Ksplice is available at http://ksplice.oracle.com/ and you can contact me by email at jamie.iles@oracle.com if you have any questions. Oracle is an equal opportunity employer.

If you do that, then on almost every context switch the new process will resume with a cold cache. In the worst case, if you were to send lots of IPC requests to a privileged process then your process could have a cold cache far too often.

Many older generations of ARM (v5 and earlier) used a virtually indexed, virtually tagged (VIVT) cache to reduce latency but this required an L1 flush on every context switch and that was incredibly painful!

Full-time, remote within US

Ksplice is the leading technology that allows administrators to patch the kernel on the fly with zero downtime and zero disruption. We're a distributed team of engineers forming part of the Linux and Virtualization group at Oracle with a passion for working on exciting technology, software craftmanship and all things Linux.

We're looking for a systems engineer to join us, helping Ksplice patch even more of the system, support new releases and improving our workflow. If you take pride in crafting software, don't rest until you full understand complex problems and are curious about what happens on the layer below then Ksplice will be of interest to you. You'll like working at all levels of a Linux system, developing tooling in Python+bash, analyzing security vulnerabilities in Linux kernel patches, enhancing the Ksplice tools and improving the workflow.

Required skills include:

  * Skilled with software development best practices including TDD
  * Expert level C/C++ programming
  * Understanding of security issues and defences in compiled languages
  * Strong experience with Python
  * Experience developing the Linux kernel
  * Excellent problem solving and debugging skills
More information about Ksplice is available at http://ksplice.oracle.com/ and you can contact me by email at jamie.iles@oracle.com if you have any questions. Oracle is an equal opportunity employer.

Full-time, remote within US

Ksplice is the leading technology that allows administrators to patch the kernel on the fly with zero downtime and zero disruption. We're a distributed team of engineers forming part of the Linux and Virtualization group at Oracle with a passion for working on exciting technology, software craftmanship and all things Linux.

We're looking for a systems engineer to join us, helping Ksplice patch even more of the system, support new releases and improving our workflow. If you take pride in crafting software, don't rest until you full understand complex problems and are curious about what happens on the layer below then Ksplice will be of interest to you. You'll like working at all levels of a Linux system, developing tooling in Python+bash, analyzing security vulnerabilities in Linux kernel patches, enhancing the Ksplice tools and improving the workflow.

Required skills include:

  * Skilled with software development best practices including TDD
  * Expert level C/C++ programming
  * Understanding of security issues and defences in compiled languages
  * Strong experience with Python
  * Experience developing the Linux kernel or similar embedded systems
  * Excellent problem solving and debugging skills
More information about Ksplice is available at http://ksplice.oracle.com/ and you can contact me by email at jamie.iles@oracle.com if you have any questions. Oracle is an equal opportunity employer.

Full-time, remote within US

Ksplice is the leading technology that allows administrators to patch the kernel on the fly with zero downtime and zero disruption. We're a distributed team of engineers forming part of the Linux and Virtualization group at Oracle with a passion for working on exciting technology, software craftmanship and all things Linux.

We're looking for a systems engineer to join us, helping Ksplice patch even more of the system, support new releases and improving our workflow. If you take pride in crafting software, don't rest until you full understand complex problems and are curious about what happens on the layer below then Ksplice will be of interest to you. You'll like working at all levels of a Linux system, developing tooling in Python+bash, analyzing security vulnerabilities in Linux kernel patches, enhancing the Ksplice tools and improving the workflow.

Required skills include:

  * Skilled with software development best practices including TDD
  * Expert level C/C++ programming
  * Understanding of security issues and defences in compiled languages
  * Strong experience with Python
  * Experience developing the Linux kernel or similar embedded systems
  * Excellent problem solving and debugging skills
More information about Ksplice is available at http://ksplice.oracle.com/ and you can contact me by email at jamie.iles@oracle.com if you have any questions. Oracle is an equal opportunity employer.

Full-time, remote within US

Ksplice is the leading technology that allows administrators to patch the kernel on the fly with zero downtime and zero disruption. We're a distributed team of engineers forming part of the Linux and Virtualization group at Oracle with a passion for working on exciting technology, software craftmanship and all things Linux.

We're looking for a systems engineer to join us, helping Ksplice patch even more of the system, support new releases and improving our workflow. If you take pride in crafting software, don't rest until you full understand complex problems and are curious about what happens on the layer below then Ksplice will be of interest to you. You'll like working at all levels of a Linux system, developing tooling in Python+bash, analyzing security vulnerabilities in Linux kernel patches, enhancing the Ksplice tools and improving the workflow.

Required skills include:

  * Skilled with software development best practices including TDD
  * Expert level C/C++ programming
  * Understanding of security issues and defences in compiled languages
  * Strong experience with Python
  * Experience developing the Linux kernel or similar embedded systems
  * Excellent problem solving and debugging skills
More information about Ksplice is available at http://ksplice.oracle.com/ and you can contact me by email at jamie.iles@oracle.com if you have any questions. Oracle is an equal opportunity employer.

Full time, remote within US and UK

Ksplice is the leading technology that allows administrators to patch the critical components of a Linux system on the fly with zero downtime and zero disruption. We're a distributed team of engineers forming part of the Linux and Virtualization group at Oracle with a passion for working on exciting technology, software craftmanship and all things Linux.

We're looking for experienced DevOps and Systems professionals to join our team.

As a DevOps engineer, you would be responsible for managing Ksplice's infrastructure for building and serving critical security "hot fix" updates for various flavors of the Linux kernel and for user space applications. Our customers depend on us to keep their systems up-to-date and secure, so we would depend on you to make sure our systems stay running and secure. Ksplice has a rich infrastructure that utilizes virtualization heavily. We are looking for somebody who can help us take that infrastructure and modernize it.

As a systems engineer, you would be responsible for expanding Ksplice to patch even more of the system, adding support for new releases and improving our workflow. If you take pride in crafting software, don't rest until you full understand complex problems and are curious about what happens on the layer below then Ksplice will be of interest to you. You'll like working at all levels of a Linux system, developing tooling in Python, building distributed systems and solving difficult problems at each layer.

The Oracle Ksplice team is a remote team, so you must be comfortable interacting remotely and working autonomously. We are a small team that expects its members to be comfortable with self-directed work. We won't micro-manage you, but, in return, we expect you to learn your job well enough that you know what is important to work on.

More information about Ksplice is available at http://ksplice.oracle.com/ and you can contact me by email at jamie.iles@oracle.com for more detailed specs. Oracle is an equal opportunity employer.

Full-time, remote within US

Ksplice is the leading technology that allows administrators to patch the kernel on the fly with zero downtime and zero disruption. We're a distributed team of engineers forming part of the Linux and Virtualization group at Oracle with a passion for working on exciting technology, software craftmanship and all things Linux.

We're looking for a systems engineer to join us, helping Ksplice patch even more of the system, support new releases and improving our workflow. If you take pride in crafting software, don't rest until you full understand complex problems and are curious about what happens on the layer below then Ksplice will be of interest to you. You'll like working at all levels of a Linux system, developing tooling in Python+bash, analyzing security vulnerabilities in Linux kernel patches, enhancing the Ksplice tools and improving the workflow.

Required skills include:

  * Skilled with software development best practices including TDD
  * Expert level C/C++ programming
  * Understanding of security issues and defences in compiled languages
  * Strong experience with Python
  * Experience developing the Linux kernel or similar embedded systems
  * Excellent problem solving and debugging skills
More information about Ksplice is available at http://ksplice.oracle.com/ and you can contact me by email at jamie.iles@oracle.com if you have any questions. Oracle is an equal opportunity employer.

Full-time, remote within US

Ksplice is the leading technology that allows administrators to patch the kernel on the fly with zero downtime and zero disruption. We're a distributed team of engineers forming part of the Linux and Virtualization group at Oracle with a passion for working on exciting technology, software craftmanship and all things Linux.

We're looking for a systems engineer to join us, helping Ksplice patch even more of the system, support new releases and improving our workflow. If you take pride in crafting software, don't rest until you full understand complex problems and are curious about what happens on the layer below then Ksplice will be of interest to you. You'll like working at all levels of a Linux system, developing tooling in Python+bash, analyzing security vulnerabilities in Linux kernel patches, enhancing the Ksplice tools and improving the workflow.

Required skills include:

  * Skilled with software development best practices including TDD
  * Expert level C/C++ programming
  * Understanding of security issues and defences in compiled languages
  * Strong experience with Python
  * Experience developing the Linux kernel or similar embedded systems
  * Excellent problem solving and debugging skills
More information about Ksplice is available at http://ksplice.oracle.com/ and you can contact me by email at jamie.iles@oracle.com if you have any questions. Oracle is an equal opportunity employer.

Thanks for the feedback. With regards to initial blocks, the advantage of using them on an FPGA design is that it's just the initialization value of the registers in the bitstream so doesn't have any real cost, but doing it with a reset would take logic, no? Does that really qualify as multiple drivers?

For the memory loading, I don't know how you'd infer a ROM another way - aren't hierarchical references only supported in simulation/test benches?

I've been working on a similar project for a couple of years now (http://jamieiles.github.io/oldland-cpu/) and these are very rewarding projects - there's a great mix of hardware and software so there's always something interesting to work on.

One of the most valuable lessons that I've learnt from this is to treat the FPGA as a validation target, and the FPGA tools purely as a way to produce that image - they're entirely unfriendly to develop in. If you use verilog then verilator gives lightening fast simulations and you can use it to verify the hardware against.

Full-time, remote within US

The Ksplice group at Oracle develops exciting technology to patch the Linux kernel whilst it is running, eliminating unplanned downtime for systems running Oracle Linux and keeping up-to-date with known security fixes.

We're a distributed team of 12 engineers working to provide rebootless updates for all of our supported kernels, supporting new OS releases and automating our workflow.

We're looking for a systems engineer to help us further eliminate unplanned reboots for Oracle Linux customers. The job role involves enhancing the Ksplice tools and core, analyzing security vulnerabilities, transforming patches into rebootless updates, and building new infrastructure to make security fixes available to customers as soon as possible.

Required skills include:

  * Expert level C/C++ programming
  * Understanding of security issues and defences in compiled languages
  * Strong experience with a modern scripting language, Python preferred
  * Strong understanding of Linux systems
  * Excellent problem solving and debugging skills
  * Experience with the git version control system
More information about Ksplice is available at http://ksplice.oracle.com/ and you can contact me by email at jamie.iles@oracle.com if you have any questions. Oracle is an equal opportunity employer.

The Terasic series are great, especially if you aren't too fussed about peripherals on the board. The DE0-nano has a decent sized FPGA and SDRAM for less than $100. There is also a SoC variant of this board coming soon with an integrated ARM subsystem.

I have mostly the same experience as a software engineer playing with FPGA's. I don't buy the argument that Verilog isn't a programming language - there are still plenty of software principles that apply to a HDL and we should take advantage of those. There are interesting differences to software - we're used to sequential software being easy and parallelizing it being hard. In a HDL, parallel is easy but sequential logic is much harder requiring state machines. Writing testable software was historically hard, but test cases cheap. It is easy to write a testable Verilog module, but fairly expensive to write test cases compared to software.

Software tools are also way ahead of FPGA tools. I'm not sure how folks that develop FPGA designs professionally retain their sanity after using the tools...

Full-time, remote within US/Western Europe.

The Ksplice group at Oracle develops exciting technology to patch the Linux kernel whilst it is running, eliminating unplanned downtime for systems running Oracle Linux and keeping up-to-date with known security fixes.

We're a distributed team of 12 engineers working to provide rebootless updates for all of our supported kernels, supporting new OS releases and automating our workflow.

We're looking for a systems engineer to help us further eliminate unplanned reboots for Oracle Linux customers. The job role involves enhancing the Ksplice tools and core, analyzing security vulnerabilities, transforming patches into rebootless updates, and building new infrastructure to make security fixes available to customers as soon as possible.

Required skills include:

- Expert level C/C++ programming - Understanding of security issues and defences in compiled languages - Strong experience with a modern scripting language, Python preferred - Strong understanding of Linux systems - Excellent problem solving and debugging skills - Experience with the git version control system

More information about Ksplice is available at http://ksplice.oracle.com/ and you can contact me by email at jamie.iles@oracle.com if you have any questions. Oracle is an equal opportunity employer.

Full-time, remote within US/Western Europe.

The Ksplice group at Oracle develops exciting technology to patch the Linux kernel whilst it is running, eliminating unplanned downtime for systems running Oracle Linux and keeping up-to-date with known security fixes.

We're a distributed team of 12 engineers working to provide rebootless updates for all of our supported kernels, supporting new OS releases and automating our workflow.

We're looking for a systems engineer to help us further eliminate unplanned reboots for Oracle Linux customers. The job role involves enhancing the Ksplice tools and core, analyzing security vulnerabilities, transforming patches into rebootless updates, and building new infrastructure to make security fixes available to customers as soon as possible.

Required skills include: - Expert level C/C++ programming. - Strong experience with a modern scripting language, Python preferred. - Strong understanding of Linux systems. - Excellent problem solving and debugging skills. - Experience with the git version control system.

Remote work possible for the right candidate in US or Western Europe.

More information about Ksplice is available at http://ksplice.oracle.com/ and you can contact me by email at jamie.iles@oracle.com if you have any questions. Oracle is an equal opportunity employer.

Full-time, REMOTE within US/Western Europe.

The Ksplice group at Oracle develops exciting technology to patch the Linux kernel whilst it is running, eliminating unplanned downtime for systems running Oracle Linux and keeping up-to-date with known security fixes.

We're a distributed team of 12 engineers working to provide rebootless updates for all of our supported kernels, supporting new OS releases and automating our workflow.

We're looking for a systems engineer to help us turn kernel patches into Ksplice rebootless updates, develop our internal tooling used to build updates for the thousands of kernels that we support and improve our client and server for releasing updates to customer machines.

Required skills include:

  - Excellent problem solving and debugging skills.
  - Expert level C programming.
  - Strong experience with a modern scripting language, Python preferred.
  - Comfort with Linux systems.
  - Experience with the git version control system.
Remote work possible for the right candidate in US or Western Europe.

More information about Ksplice is available at http://ksplice.oracle.com/ and you can contact me by email at jamie.iles@oracle.com if you have any questions. Oracle is an equal opportunity employer.

Verilator is an excellent tool, definitely recommended. I've been using it myself on a project and I have seen simulation times for tests drop from 22 seconds with Icarus down to 0.5 seconds with Verilator. Being able to easily call C code or DPI is a big win for testability.

Cambridge, MA or REMOTE. Full-time.

The Ksplice group at Oracle

Does writing Python clones of your favorite childhood computer games sound like a fun weekend project? Would you hack on an old-school graphics demo that fits into a DOS MBR in your free time? Have you ever told a joke whose punch line was a git command? If that sounds like you, we want to hear from you!

We are a small, tight-knit team of 12 women and men excited to work on technology that most people will tell you is impossible: updating an operating system kernel while it is running. Our product, Ksplice Uptrack, is a subscription service for Linux that provides completely non-disruptive, rebootless kernel updates. (You can read more about the underlying technology at http://www.ksplice.com/paper)

We're looking for a systems engineer with strong Python experience: Help us bring the Ksplice Uptrack client to new Linux distribution releases, improve our server infrastructure, and develop and extend our REST API and Django-based web interface.

If this technology excites you, let's talk! Feel free to direct questions to me at jamie.iles@oracle.com or to jobs@ksplice.com. Oracle is an equal opportunity employer.

Cambridge, MA or REMOTE. Full-time.

The Ksplice group at Oracle

Does writing Python clones of your favorite childhood computer games sound like a fun weekend project? Would you hack on an old-school graphics demo that fits into a DOS MBR in your free time? Have you ever told a joke whose punch line was a git command? If that sounds like you, we want to hear from you!

About us

We are a small, tight-knit team of 12 women and men excited to work on technology that most people will tell you is impossible: updating an operating system kernel while it is running. Our product, Ksplice Uptrack, is a subscription service for Linux that provides completely non-disruptive, rebootless kernel updates. (You can read more about the underlying technology at http://www.ksplice.com/paper)

We're looking for a full-stack engineer with strong Python experience: Help us bring the Ksplice Uptrack client to new Linux distribution releases, improve our server infrastructure, and develop and extend our REST API and Django-based web interface.

If this technology excites you, let's talk! Feel free to direct questions to me at jamie.iles@oracle.com or to jobs@ksplice.com. Oracle is an equal opportunity employer.

Cambridge, MA or REMOTE. Full-time.

The Ksplice group at Oracle

Does writing Python clones of your favorite childhood computer games sound like a fun weekend project? Would you hack on an old-school graphics demo that fits into a DOS MBR in your free time? Have you ever told a joke whose punch line was a git command? If that sounds like you, we want to hear from you! About us

We are a small, tight-knit team of 12 women and men excited to work on technology that most people will tell you is impossible: updating an operating system kernel while it is running. Our product, Ksplice Uptrack, is a subscription service for Linux that provides completely non-disruptive, rebootless kernel updates. (You can read more about the underlying technology at http://www.ksplice.com/paper)

Our open positions

Kernel engineer: Help us bring Ksplice to new Linux distribution releases, build rebootless kernel updates, and improve and scale the infrastructure around distributing them to our users.

Full-stack engineer with strong Python experience: Help us bring the Ksplice Uptrack client to new Linux distribution releases, improve our server infrastructure, and develop and extend our REST API and Django-based web interface.

If this technology excites you, let's talk! Feel free to direct questions to me at jamie.iles@oracle.com or to jobs@ksplice.com. Oracle is an equal opportunity employer.