Onboarding Documentation

Welcome to Analogic

Welcome to the engineering team! This guide covers everything you need to know on your first day.

Getting Started

  1. Badge & Building Access — Visit Security on the first floor to pick up your badge. Your manager should have submitted the access request beforehand.
  2. Workstation Setup — IT will have your workstation ready. If anything is missing, contact the IT Help Desk (ext. 4500).
  3. Network Accounts — You'll receive credentials for:
  4. Email and calendar (Outlook)
  5. Source control (GitLab)
  6. Issue tracker (JIRA)
  7. Callimachus (this knowledge base!)

Key Contacts

  • Engineering Manager: Thomas Anderson — reach out for any onboarding questions
  • IT Help Desk: Extension 4500 or help@analogic.internal
  • Facilities: Extension 4200

Development Environment

All engineers should have the following installed on their workstation:

Tool Version Purpose
Python 3.9+ Scripting and tooling
GCC 10+ C/C++ compilation
Git 2.30+ Version control
Docker 20+ Containerized builds

Code Review Process

All changes must go through code review before merging:

  1. Create a feature branch from main
  2. Submit a merge request in GitLab
  3. At least one approval required
  4. CI pipeline must pass
  5. Squash merge into main

Safety & Compliance

As a medical device company, we follow strict quality processes. All engineers must complete:

  • FDA 21 CFR Part 820 training (scheduled by QA in your first week)
  • Software Development Lifecycle (SDLC) overview
  • Document Control training

Contact Lisa Kim in QA if you have questions about compliance requirements.

Software Engineering

Repository Structure

Our main repositories are organized as follows:

  • ct-platform — Core CT scanner platform (C++/Python)
  • image-processing — Image reconstruction and processing (C++/CUDA)
  • operator-console — Operator-facing UI (JavaScript/React)
  • cloud-analytics — Cloud data pipeline (Python/Java)

Build System

We use CMake for C++ projects and setuptools for Python packages. To build the platform locally:

cd ct-platform
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Debug
make -j$(nproc)

Testing

  • Unit tests: Run with ctest (C++) or pytest (Python)
  • Integration tests: Require a running simulator — see the test/integration/README.md in each repo
  • Automated test suite: Managed by David Park — reach out for access to the test lab

Coding Standards

  • C++: Follow the Google C++ Style Guide with our local exceptions documented in STYLE.md
  • Python: PEP 8, enforced by flake8 in CI
  • All code must pass static analysis (clang-tidy for C++, mypy for Python)

Key People

Hardware Engineering

Lab Access

Hardware engineers work primarily in the hardware lab (Building A, Floor 1). You'll need additional badge access — your manager will submit the request.

Lab Safety Rules: - ESD wrist straps must be worn when handling PCBs - No food or drinks in the lab - Log all equipment usage in the lab notebook

Tools & Equipment

Tool Location Contact
Oscilloscope (Keysight) Lab A1-Bench 3 Marcus Johnson
Logic Analyzer Lab A1-Bench 5 Marcus Johnson
PCB Workstation Lab A1-Bench 1 Robert Wilson
Thermal Chamber Lab A1-Room 2 Facilities

Design Tools

  • Altium Designer — PCB layout and schematic capture (license managed by IT)
  • LTspice / Cadence — Circuit simulation
  • MATLAB / Simulink — Signal processing and modeling

Key Projects

  • Detector Module — The core X-ray detector electronics. Contact Marcus Johnson for orientation.
  • Power Management Board — Power distribution and regulation. Legacy design documentation is in the power-mgmt repo.

Key People

  • Marcus Johnson — Detector electronics lead
  • Robert Wilson — PCB design and EMC (note: Robert has left the company, but his documentation remains in the hardware-docs repo)