Senior Software Engineer
Jump into an empowered role doing full stack feature development. You will report directly to our Tech Lead and hold a lot of responsibility and influence in our technological decision-making process. Become familiar with all parts of our modern stack, and exercise judgement in key decisions, such as assessing trade-offs between design and feasibility. Choose when to hack, and when to invest time in architecture. You will engineer your features to be scalable and resilient in a multi-platform mobile application, sitting atop a micro-service platform.
Working for Flock, you’ll have the opportunity to work closely with product/UX and enhance your understanding of design theory. You will also learn how to construct complex SQL queries, and how to understand and navigate the tradeoffs inherent in running a service architecture based system, being continuously deployed several times a day with zero downtime.
- Work with a production system, utilizing Agile processes such as: Code Review on Github, Pair Programming, Continuous Delivery to AWS using Kubernetes and Terraform, Unit Testing and end-to-end testing.
- Plan and estimate work on a weekly basis
- Build Single Page and Mobile Applications, Web Servers, and other relevant systems
- Use NodeJS, React Native, Redux, Flow, Babel/ES2017, Haskell, Postgres, Kotlin and Swift.
- Proactively research new technologies and bring them to the team to help maintain our edge
- Help to maintain a stable production system by responding to live issues on a weekly PagerDuty rotation
The above statements describe the general nature and level of work. They are not a comprehensive list of all responsibilities, duties, or skills required.
- NodeJS (with ExpressJS)
- Postgres (note, we do not use any ORM as we do some fairly complex lifting at this layer)
- React Native + Redux
The ‘wow’ factor
If you have any of these, you are a cut above the rest. If not, we look forward to teaching you!
- Familiarity with both NodeJS and React
- Familiarity with Mobile development, preferably by way of React Native + Redux
- Familiarity with Kotlin/Java/Swift/ObjectiveC
- Familiarity with type systems and type theory, particularly FlowJS
- Familiarity with Agile best practices in general and Continuous Delivery in particular
- Familiarity with Terraform, Kubernetes, and AWS permissions
- Strong Postgres knowledge
- Open source contributions or other community engagement
- Experience working at a small startup
- A BSc or above in Computer Science/Mathematics or a related field
Life as an Engineer at Flock
- We practice continuous delivery - your code ships to production minutes after hitting master
- We use code reviews
- We use the best tool for the job, and do not shy away from introducing new technologies (like Swift/Kotlin) when it makes sense
- We believe that type systems are one of the best ways to guarantee quality, and apply FlowJS rigorously, requiring closed immutability on all objects at lint time
- Engineers have weekly learning mornings - Study whatever you want
- Quarterly hackdays
- Open Source contributions actively encouraged and rewarded
- Our Engineering Culture is public knowledge; see it here: https://blog.flockcover.com/flocks-engineering-culture-b712370baa9f
- Apply on this page (https://flockcover.workable.com/j/E0ACFDBBEE). Please explain (briefly) why you’re interested in this position and why you believe you're the right person for the job.
- We will schedule you in for an initial 20 minute phone conversation with Abe (Tech Lead).
- Provide us with some of your code. alternatively, we will provide you with a short take-home exercise (takes about 40 mins to one hour)
- We will invite you for interview with Abe (Tech Lead) and the rest of the team. We will work through some architecture exercises and a whiteboard coding exercise. We may do a short pair programming exercise, and then give you the opportunity to ask us any questions you may have and to talk about the role in detail.
- 4+ years of professional Full Stack Software Engineering Experience
- Exposure to React and a backend technology
Exposure to NodeJS and a frontend technology
- Exposure to SQL
- Authorised to work in the UK
- Competitive salary
- Options: we want you to own the work that you do. And this means owning the company you work in. All employees receive options as part of their compensation package.
- Pension: we offer a full auto-enrollment workplace pension for all employees who want it. Nothing fancy here. Just a pension.
- Large amounts of autonomy and empowerment in your work
- Holidays: we offer 33 days of holiday per annum, including bank holidays.
- Flexible working / working from home: we don’t have fixed working hours, some of our team start at 8am, others at 10am. We trust you to establish an effective working pattern that allows you to excel in your role and makes you a great Flock team member.
Learning & Development
- Books, courses and conference budgets for all employees
- Hackathons: we run a quarterly hackathon which lasts 24 hours. Everyone’s invited to join in.
- Breakfast club: learn from your colleagues (or teach us something new!)
- Dedicated learning time. Every Engineer is provided with 4 hours every other week to study something they are interested in.
- Contribute to Open Source during work hours
- Receive a platform and time to write on our technical blog
- Speak at meetups and conferences
- Friday fancy lunches: once a month the entire Flock teams heads for lunch together. We call it ‘fancy lunch’. But sometimes it’s just at a pub.
- Quarterly offsite adventures: every quarter the entire team do something crazy together. Like fly a plane to the coast.
- Unlimited coffee, tea and fresh fruit every day