ICEO has been building innovative startups in Blockchain, Fintech and Big Data for more than 10 years. We are a venture builder with experience founding companies that succeed in the marketplace. Forbes and Newsweek have written about our projects.
About the role
Due to our development plans, we are looking for a programmer for a mid-level Scala developer position, who will complement our development team working on the Norion blockchain solution.
A developer's job at ICEO is an opportunity to work with a team of professionals - from other developers to DevOps! Moreover, the work of a developer in our company consists not only of programming, but also of active participation in creating the product concept, planning its development and choosing the technologies used.
We organize internal trainings on the technologies we use, where developers with more experience share their knowledge with the rest of the team.
ICEO also offers the opportunity to develop towards leadership. If you become a member of our team, you will have the opportunity to work as a Tech Lead and advance to the position of CTO for a new product!
About the project
Norion is a startup company built from the ground up by the ICEO team. It is an innovative organization where we help entrepreneurs enter the world of Blockchain and Web3. Our customers are companies from the traditional market and blockchain startups that want to create and publish their own token. We are known for offering customized tools for issuing and managing digital tokens. In addition to technology, we have ready-made legal solutions and access to investors and business angels, thanks to which we provide comprehensive support to entrepreneurs and enable them to take their first steps in the world of Web3, DeFi and Metaverse.
Methodology
We work according to the Kanban method.
Daily project meetings are held in a lounge format to share knowledge between members of the different projects.
Work on a particular microservice is usually done in small teams with a rotating composition. Thanks to this approach, developers constantly share their knowledge and gain more experience. It also supports integration and simplifies the division of responsibilities within the team.
- Technology stack: Scala, Cats, Akka,
- Communication: Slack, Discord
- Workflow management: Jira
- Documentation: Confluence
- Repository: Bitbucket
- Monitoring: Grafana, Kibana
- Infrastructure: Docker, Kubernetes, Microservices, GCP
Your responsibilities will include:
- developing services according to best practices while maintaining high code quality,
- maintaining services in production,
- supporting in the software development process - research, conceptualization, implementation,
- managing the documentation of solutions,
- working with the front-end team,
- QA module testing,
- coordinating work with supervisors,
- attending meetings in a "the daily" format,
- adherence to and implementation of best practices,
- reviewing the work of other developers,
- conducting training for other developers.
What we expect from you:
- very good knowledge of Scala,
- at least 2 years experience in developing and building microservices (REST),
- at least one year of experience working with Scala,
- experience working on projects that have been released to production,
- good knowledge of technologies such as:
- SQL (optimally PostgreSQL),
- Kafka,
- Akka,
- Redis,
- Docker,
- Git,
- understanding of the principles of CI / CD,
- knowledge of debugging, monitoring and optimizing application performance,
- knowledge of the concepts of multithreading and distributed computing,
- good command of written and spoken English.
Welcome:
- competence in Java,
- experience with NoSQL databases,
- competence in Spark,
- understanding function programming concept,
- knowledge of the event sourcing pattern,
- experience with code instrumentation,
- experience working with Prometheus, Grafana,
- experience working with tools: Jira, Confluence, Bitbucket,
- experience in developing applications from the FinTech sector,
- understanding of the business assumptions of the product,
- interest in blockchain technology.
Career Path
- Medium Scala Developer — programming, participating in the creation of a product concept and planning its development.
- Senior Scala Developer — programming, participating in the creation of a product concept and planning its development on a senior position.
- Tech Lead — making technological decisions in a particular module, assigning tasks in a team working with a particular module.
- Head of Development — full responsibility for the architecture, the whole life cycle of the system and teamwork in the project. Understanding of business requirements and ability to translate them into architecture. Prioritization of tasks, leading to deliberate build and elimination of technical debt.
Benefits and Perks
- salary PLN 18,000 - 25,000 net - B2B,
- 26 paid days off in case of B2B contract,
- the possibility of employment on the basis of a permanent employment contract,
- Medicover Premium private medical care package,
- MultiSport Plus package,
- equipment - desktop computer / laptop, monitors and office accessories,
- full-time employment,
- the possibility of adjusting working hours,
- work in remote mode or from our office in Krakow,
- the opportunity to participate in an internal training program,
- a career path that allows for continual advancement and reaching C-level position,
- participation in business and integration meetings.
Recruitment process
Our hiring process consists of a maximum of two stages.
Stage I
- Introductory meeting, where we will introduce you to our company and Venture Builder's approach. We will tell you about our goals, our team, the projects we have worked on, and those currently in progress. At this stage, we would like to know your current situation regarding a job change, your financial expectations, and your preferred form of employment.
- Technical interview, where we would like to learn more about your experience. We will ask you some questions about software architecture, best practices, and your knowledge of specific tools.
*Optional Stage II:
Technical assignment followed by discussion. This phase occurs sporadically. As part of the hiring process, we may ask you to perform and discuss a short technical task closely related to the skills required for this position.