Services

Iterators help businesses cut costs and increase revenue through custom software. Our knowledge and flexibility let us serve established enterprises and growing companies. Below is a detailed list of services we provide.

Startups

  • Backend & frontend development
  • Mobile development
  • Software architecture design
  • Product design
  • Metrics collecting and customer behaviour testing
  • Solving scalability issues and improving response times
  • Optimizing SEO
  • Implementing monetization strategies
  • Designing APIs

Enterprise

  • Enterprise Content Management
  • Workflow management
  • Business process optimization
  • Document digitalization & archiving
  • Authentication & corporate role management
  • Business intelligence
  • Project feasibility studies
  • Risk assessment
  • Project specification
  • Technical trainings
  • Staff trainings

IT

  • Systems scaling
  • Debugging
  • Implementing CD & CI solutions
  • Infrastructure design
  • Preparing and training IT operations
  • Building and managing Content Delivery Networks
  • Building live streaming and VoD CDNs
  • Auditing code bases
  • Building and verifying test suites
  • Supporting acceptance tests

Technologies

Our development team main specialty is developing reactive systems in Scala & Akka. However we always strive to provide complete software solutions — one that consists of backend, various types of interfacing frontend technologies and runs on reliable, robust and easy to maintain infrastructure.

Backend

  • Core technologies
    • Scala — Akka, Spray, Play, Slick
    • Ruby — Ruby on Rails
  • Data storage & queuing
    • RDBMS/SQL — PostgreSQL, MySQL, PLSQL
    • NoSQL DBs — MongoDB, Cassandra, Redis, Neo4J
    • Queueing systems — RabbitMQ, Kafka
  • Data analysis
    • Apache Spark & Storm
    • R, Matlab modeling
    • Custom models
  • Architecture
    • Microservices
    • Monolithic & n–tier enterprise architecture
    • Asynchronous actor model
    • Enterprise service bus

Frontend

  • Web
    • HTML5 & CSS3
    • Angular.js
    • Backbone.js
    • Underscore.js
    • Scala.js
    • Various data visualization frameworks
  • Mobile
    • Android
    • iOS
    • Windows Phone
    • PhoneGap
  • Other
    • OpenGL
    • C++ 3D stage management & game engine frameworks

Infrastructure

  • Cloud service providers
    • Amazon Web Services
    • Heroku
    • Google Cloud Platform
    • DigitalOcean
    • OpenStack
  • Infrastructure as a Code
    • Docker
    • Ansible
    • Custom linux scripts & configuration
  • Service Discovery & Configuration Management
    • ZooKeeper
    • Consul.io
    • CoreOS
  • Instrumentation, Metrics & Visualisation
    • NewRelic, Takipi, StatHat
    • StatsD, Graphite
NoSQL MongoDB Partner logo

MongoDB® Ready Partner

Typesafe logo — We are Typesafe's consulting partner for Scala, Akka and Play

Lightbend® Consulting Partner
(formerly Typesafe®)

Working with Iterators

We believe that business is more about relationship than simply exchanging money for services or goods. That is why we value open communication, collaboration transparency and quality deliverables.

Constant Feedback

We enjoy working in a tight feedback loop. That is why we usually mix into our client's team. We take part in the same stand–up meetings, we do the planning and development together, we sit in the same chat rooms. We keep our clients informed through the same communication channels they use ex. email, Skype, Hangouts, Slack or old–fashioned IRC. We want our clients to know what we are working on and what is the progress.

Flexible Agreements

We are always open to new forms of cooperation but over the years we battle–tested following agreements:

  • Flat hourly rate — we charge for every hour our developers have spent on client's project. Once in a while (usually once in a month) we issue an invoice for the last billing period. We provide detailed receipt so that our client knows what he or she pays for.
  • Retainer fee — it is very similar to hourly rate but there is a fixed amount of hours paid upfront. This allows us to offer lower price–per–hour while our client can better plan his or her budget.
  • Fixed–price — it is the least flexible form of agreement where specification and price are set upfront. It makes it very easy to plan budget but specification must stay frozen throughout the project course. Payments are usually batched and tied to product milestones. Due to very high risk of specification becoming outdated, we suggest this agreement only for a very specific projects.

Delivery & Guarantees

Every agreement carries some risk. We always do everything to mitigate it for our clients — we want to be an investment, not a cost. In particular we put various guarantees and SLAs in our agreements with clients. We strive to make them feel that they hired the right company for the project.

Deliverables & Artifacts

Providing services for us is about delivering. Even for the smallest tasks we want to give our customer something concrete and useful. Below is a list of deliverables our clients receive from us.

Product Design

It is great when designers of the product are familiar with state of the art technologies and solutions. Invite us to your design team and we will bring new diverse technological perspective. Forget about the engineer nay–sayers. We will do everything to envision solution that solves your customers problem. Just a glimpse of the artifacts you can work on with us:

  • Persona analysis
  • Customer journeys
  • User stories
  • Backlogs
  • Storyboards
  • Mockups
  • A/B and multivariate test plans
  • Requirements
  • Technological feasibility studies
  • Lo–fi and hi–fi prototypes
  • Full project design documentation books

Deployment

Complete project consists not only of working software but also server infrastructure, proper operation procedures and trained staff equipped with well–written documentation. Example deployment artifacts our client get from us are:

  • Ready–to–go servers
  • Backup procedures
  • Scripts
  • Manuals for administrators
  • User documentation
  • Built–in modern–looking tutorials
  • Infrastructure plans
  • Assistance
  • Guarantee agreements
  • Training and training materials
  • Docker files
  • Ansible playbooks

System Design

Designing great customer experience is one thing, the other one is building a machine that will make it happen — with robustness and at scale. Even in fast agile iteration, documentation can help stakeholders understand each other and keep technical debt transparent. Staged waterfall project management often requires basing expectations on formalized documents. We will help you validate them and learn where the pitfalls could be hidden.

Backend

  • API design
  • Architecture design
  • Datastore schemas
  • Proof of concept tech prototypes
  • Specifications of protocols
  • Use cases
  • UML diagrams
  • Case studies
  • Risk analysis

Frontend

  • Navigational flows
  • State transitions
  • Hi–fi mockups ready for cutting

Development

Monitoring quality of software is not only important for us, but it should be important for you. We will provide you with all the information and tools required to do a proper Quality Assurance. Some of them are listed here:

  • Source code in your repository
  • Binaries
  • Tests & reports
  • Issue tracking
  • Code review access
  • Set up CI/CD pipelines
  • Developer documentation
  • Code & architecture review reports

Validate your tech strategy
Meet us on our confidential consultation — we'll be able to assess risks involved with your tech stack.


or
Just send us an email