The Technology Team
Induction
Introduction
Brief induction to the technology team, the tools we use, our role at Heyday and ways we work.
But first...
How about a bit about yourselves?
Technology team overview
We don't (just?) do this...
Overview
- Obviously we're one of several teams
- ... but the largest team at Heyday
- We consist of several sub-teams...
Sub-teams:
- Server-side (SS)
- Front-end (FE)
- Test (Quality Assurance)
Let's get more technical
Server-side vs Front-end
Let's look at how we divide up the technical build of a website.
What we do:
- Technical build (developers)
- Technical investigations and finding the best technology solutions for projects (generally seniors and leads)
- Systems integration
- Technical consultancy
- Systems architecture
...
...cont'd
- Project planning and estimating (generally seniors and leads)
- Infrastructure setup & configuration (mostly cloud) (generally leads)
- DevOps: service monitoring and management
- Manage a few internal systems
- Internal tech sessions (e.g. DNS 101)
- Like all other teams - help improve internal processes
Frameworks
We use one to build a website; what's a framework and why do we use one?
Let's look at SilverStripe (90% of our sites??) for one of our clients as an example...
Open source
- What does it mean?
- A couple of projects we have open sourced:
- Beam
- Module development
Solution Architecture
Designing and describing the technical components behind the build of the website.
Security, stability, scalabilty and availability are all key considerations.
Key parts of a project
- Requirements capturing
- Scoping
- Estimating
- Concepting
- Wireframing
- and...
Build
Coding
Designing and writing code. This requires planning, some creativity and focus on making that code clean, maintanable, reusable and scalable.
Development process
- Generally use an IDE for writing code
- Code is stored in version control system
- Environments are mostly virtualised
Testing and client review
- Staging sites
- Design and Front-end working together
Go live for a new website
- Create production hosting environment, or use an existing one
- Use Beam to move up code and assets
- Content create in production
- Testing
- Configure DNS to point www.new-website-we-made.com to the hosting environment
Deployments
Moving code to a hosted environment
- Not done on a Friday due to risk
- Close down period over summer holidays
Hosting
What do we do for hosting?
- Umbrellar
- Cloud platforms, in particular Azure and AWS
- Common Web Platform: managed SilverStripe for govt
Goals for dev
- Re-use
- Solid, consistent maintainable code and systems
- Getting the bread-and-butter right so we can be better and do the cool stuff
What's important for dev?
- Clear and accurate briefs
- Support of internal systems and processes
- Keeping abreast of new technology
Start when appropriate
Disciplines have different requriements before they should begin:
- SS needs functional requirements
- FE needs designs and server-side
- Test needs a working site!
Process
- Tasks estimates etc into Jira
Questions?
Anything else?
- General Heyday questions?
- Technology/internet questions?
- Anything that would be good to add to the technology induction material?