Having ideas is great - getting know-how is a step to another level!
QLab Accelerator aim is to support fresh ideas, build strong teams and make innovative startups possible. And we are starting from our own house!
Quantox launched an internal call for Quantox people with the most promising start-up ideas with a goal to support it and transform it into marketable digital solutions.
From professional guidance and mentoring support, specialized business & start-up knowledge, through networking and funding opportunities - QLab is designed to give major support during the idea development from scratch.
By joining the contest and submitting their ideas, our people have a chance to get an opportunity for a 3 months educational program this summer, specially designed to turn their brainchild into a successful product, and get a chance for funding.
The most promising concepts and teams will be chosen for the program to gain essential business, expert, technical knowledge, and guidance from experienced mentors from all core fields, needed to kick off their start-up idea. Furthermore, the best idea on the final pitch will get a grant of 10.000 EUR to provide a smooth start and push for further development.
Lead by the mission to be a generator of internal knowledge, skills, and ideas to create value and make a leap in the digitalization era, and create an environment that encourages quality and innovative approaches to digital challenges, Quantox decided to start QLab Accelerator as an innovative tech nest for all those who aim to go further.
It is possible to turn ideas into reality with proper support and experienced people behind you. We believe in the ideas and knowledge that make a difference!
We truly believe in the potential of this program to discover remarkable solutions from our people and we are thrilled about the possibility to expand it beyond the internal hub in the future.
It’s not just about ideas.
It’s about MAKING IDEAS HAPPEN!
Dare to innovate, we are here to support you!
When it comes to developing software for either a company or an individual, questions like ''How much will this cost'' and ''How much time will this take?'' are inevitable. One of the most important things that a project depends on is the cost of software development.
It's only natural for the clients to wonder whether they can afford software development and if it will be done within the desired timeframe. Most of the sales meetings will revolve around this question. However, many clients often don't realize how many different factors impact the cost of software development because the highly complex estimate process is not transparent to them.
Still, when it comes to everything you need to know about software development in 2022 and all things related to making a good estimate, it's easy to get lost in a sea of information. That's why we decided to try to explain and help you understand this process better. The points we present to you will clarify the difference between Time and Effort and show you additional factors used to come up with a valid software development project estimate.
Average Cost of Software Development
If you are a start-up owner, having a precise estimate of the software development cost can help you plan your budget better. However, if you don’t have a detailed discussion with an IT company about the costs, all you’re going to get are vague answers.
This happens because more than just one factor determines the cost of the software. An app that requires only backend processing is much cheaper than one that’s connected to external systems and involves financial transactions. Still, a project’s complexity level is only one factor.
Other vital factors are the technology and people-hour required to build the software. The consensus online is that software development can cost anywhere from $50,000 to $250,000. If the app can be built in under 700 hours, the cost will be in the lower price range, but if you want the same app to work across all platforms (web, Android, iOS…), the cost will rise to a 6-figure price.
Please take note that the prices listed in this article do not reflect the actual pricing of Quantox Technology but are rather a reflection of an analysis related to the average software development costs in the industry.
Main Factors of Estimating Software Development
The perfect software development cost estimate will consider that we are not living in a perfect world, and circumstances that are out of our control can happen often. Things like staff availability, deployment process, and the time it will take to access the system, or a database will affect the timeline of the project and, therefore, can affect the cost. However, the following factors are the most important to explore if you want to learn how to determine the cost of software development in 2022.
Different platforms like Android, Web, and iOS have a different volumes of users, and depending on which platform you’re building your software, you’ll be able to reach a different number of possible users. However, developing a cross-platform app takes means that the cost of software development is going to go up. A cross-platform app is deployable on all platforms with the same codebase. Still, you need an experienced team to save time on building this type of app, and it may not even be the best solution for products that include streaming, graphs, and dashboards.
Your next solution is to build a native app for each platform meaning one codebase for iOS native to this platform, and a different code for Android. However, this solution is also the most expensive one as you’re building two separate applications. You can always do what most start-ups do- focus on one platform until you achieve a certain level of success and expand your budget. After that, you can easily take on the cost of building the same app for all other platforms.
Now you're probably wondering, "But what about the cost of the software development technology?". If you opt for one of these 10 software development trends in 2022, like augmented reality, virtual reality, or blockchain, it may cost you more. However, you're still paying a developer, engineer, or programmer for the job. Most of these technologies do not require a special type of equipment to execute a project successfully- it's the knowledge and effort of the person working on it that's going to cost a little bit extra.
Software development projects can be divided into the following types starting from the lowest level to the highest:
Depending on the type of the project, we'll need a different team with a different amount of development effort. Once we have all the facts, we will reach the final estimate by combining this information with the project size analysis and team analysis.
The Size of the Software Project
This step can be a bit trickier because the size of the project sometimes doesn't correspond to its complexity. A large project can sometimes be more straightforward than a small but highly complicated project. Generally, software development projects are divided into small, medium, large, and enterprise.
When it comes to the size of the development team on one project, usually, we'll have at least three roles- a Project Manager, a Developer, and a QA Tester. However, depending on the size of the project, these three can expand the scope of their work, and we can have a developer who's also in charge of a testing phase. Larger projects, however, prefer to assign one role to one team member to get the job done.
Hiring software developers anywhere in the US or Western Europe may overwhelm your budget because their hourly fee averages around $100/hour. The developers based in eastern Europe proved that they could build software applications without compromising the quality and at a much lower rate. Asia can also offer software development professionals at a lower rate, but time zone, language barriers, and cultural differences proved to be a challenge for any type of project.
The IT industry allows you to find the best developers in the world to work on your software. You can hire a software developer in three different ways- as a freelancer, within an in-house team, or by outsourcing a development company.
-Freelance Software Developers: While there are a lot of great freelancing platforms where you can find amazing software developers for a low price, there’s practically little to no guarantee that your project will be completed successfully, if at all. There’s also no way for you to control the freelancer and the progress they are making on your project.
-In-house: Having an in-house software developer means hiring the one to work on your project from the comfort of your own office. That way, any issues or bugs can be resolved on the spot. However, the recruitment process can be time-consuming, even with the help of LinkedIn or Glassdoor. You’ll also find that having an in-house software engineer can require more investments in salaries, taxes, and equipment as well. Also, you’ll find out that software developers need a lot of really helpful software development tools to allow them to build and integrate your new software app, and this is something that will also have to come out of your budget.
-Outsourced: Software Development Outsourcing has a much more significant impact on the cost of software development. While developing software in-house does provide a certain amount of security to the client, the cost of outsourcing software development outweighs the additional security by reducing the cost by 40%.
This happens because there's a gap between developed and developing countries like India and Mexico. With outsourcing, you can cut costs and still get a top-notch product. All it takes is a bit more focus on choosing the best software development partner in 2022 to get your project completed.
Our methodology for estimation of Software Development Cost
At Quantox, we recognize that there are no two businesses that are the same, and similarly, the apps and software we create for our clients are all unique. However, to start-up and business clients, knowing the cost of software development is imperative to plan their budget.
Our systematic process allows us to give our clients a precise cost estimate. When you show your interest in working with Quantox Technology, we make sure to schedule a meeting and discuss your idea in detail. We will ask you detailed questions regarding your app or software but also related to your goals and business requirements. You'll receive your cost estimate with an architecture diagram within seven (7) working days.
If you are satisfied with the project cost estimate, we can present a few options to start building your app the best way.
How Quantox Can Help Your Business with Software development
Quantox Technology has been developing tailored software solutions for more than a decade, and we have a track record of creating accurate software development cost estimates. By including the non-technical factors that impact the cost of software development, our clients have a clear picture of what it takes to digitalize their ideas. If you need a software development cost estimate, Quantox Technology will be glad to assist you with it. Let's Talk!
You can learn more about how to estimate the cost of software development in our free eBook “The Ultimate Guide to software development in 2022”. Find out more about the 2022 programming trends and software development tools that can help your business grow.
Uplift for further steps
Quantox leaders are awarded the "EY Fast Growing Entrepreneur 2021" prize by the global auditing and consulting company Ernst & Young.
Vuk Popović and Filip Karaičić on behalf of Quantox Technology have been recognized among the most successful in 2021. at a ceremony which was held in Belgrade last month. This is the tenth year in a row that E & Y, through its global “Entrepreneur of the Year™” program, supports and promotes entrepreneurial achievements among individuals and companies that demonstrate vision, leadership and success.
Quantox is a story about vision.
Proof that ideas and dreams come true.
Vuk Popovic, founder, says:
"For me, being an entrepreneur means never stopping to learn and develop. Tackling technology 15 years ago as an entrepreneurial endeavour - with willpower, effort and persistence - has made Quantox an international company with more than 500 experts working in 13 development centres in 7 countries. It took courage and the vision remained the same - improving our environment, the city, the country and the whole IT sphere and the world of technology by improving ourselves. "
According to Vuk, it was not easy at the very beginning, but each phase of development had its own challenges and achievements.
“One of the first goals was to primarily enable people across our country to work in the IT industry for global clients from their home city. The sudden changes and challenges in the last two years when we switched to remote work have shown how flexible we are and company still has continued to grow rapidly due to such circumstances, which was additionally influenced by the market situation. Today, the company cooperates with clients from over 15 countries around the world and various industries - from small brands to large international companies, which is a great motivation to be even better. One of the biggest challenges is achieving stable and sustainable growth and that is what we are constantly striving for - to grow stronger and improve quality, every day. This award is certainly an extra push in that mission."
Filip Karaičić, CEO of Quantox Technology, confirms that the journey took a lot of years, effort and energy, but after expanding into new foreign markets, doubling the number of employees in the last two years and the first domestic acquisitions, the company is more than ever ready for new steps forward.
"The end of the previous year was marked with the first Quantox’s acquisition in Serbia and we entered the spring of 2022. stronger for another domestic company and new team members. We are growing and pushing the boundaries and we are glad to be recognized in that stride. The IT industry is one of the fastest growing, providing constant dynamics and new opportunities. We believe that our position also brings the responsibility to encourage the progress of each individual, company as a whole and thus contribute to an even better positioning of Serbia on the global IT map. "
Plans for the future are a further expansion of expert teams and development centers in Western European countries, entry into new markets, and new acquisitions in the country and the region. "With the further expansion of expertise, we continue our mission to create an environment that encourages a progressive and innovative approach to digital challenges," concludes Filip.
During the previous years, more than 200 companies with 222 candidates participated in this program in the Republic of Serbia, and it’s a great pleasure to be chosen in the narrowest circle of visionaries with recognized achievements.
The winners are chosen by an independent expert jury and selection is based on success factors such as entrepreneurial spirit, financial indicators, strategic direction, regional or international market presence, innovation, and personal integrity.
Great honor and motivation for the whole Quantox team!
As the world enters deeper into the digital era, it becomes clear that software development and the software industry, in general, will become essential. As a result, the software industry has already become the fastest-growing industry globally, and it continues to grow even more every day.
This phenomenon becomes easy to understand when we look at all the areas of our lives powered by software. Everything is powered by, controlled, or maintained by some type of software, from our homes, appliances, and bank accounts to medical equipment and even state security.
Creating software is not an easy task, and there's no one more important in the software development process than those who will create the software- software engineers and programmers. Thanks to their skill and meticulous work, we can have a myriad of software designed to meet our every need as human beings and society.
As such, software is essential for companies that want to be at the top of the market and stay there. The biggest benefits of having sustainable and secure software within an organization are increasing work efficiency and improving micromanagement.
However, software development is anything but arbitrary — the software development process is an incredibly detailed process that includes analysis, software development cost estimate, design, and development even before programmers begin writing the code. When backed up by the best development tools, programmers will have a much easier time creating, maintaining, debugging, and editing applications, programs, and frameworks. This is why finding the right software development partner that will handle all stages of the software development process is the most important thing for all companies.
Software development tools can also be called software programming tools because they are computer programs designed to make programming easier. They are used by software developers and programmers to write the code, but also to maintain and edit the code if needed. Software development tools can also be used for the support and debugging of other programs or applications. So in a nutshell, software development tools are software that makes software development easier and in some cases, possible.
There are thousands of great software development tools today and choosing the right one can be stressful and daunting. However, the reason why there are so many software development tools is that each one corresponds to a different need or preference. So, while having a choice can be confusing, it’s much better than having no choice or a limited one. And when it comes to choosing the right development trend, including a programming tool, finding the one that will suit all requirements can be considered as a jackpot.
Choosing the right one will depend on the project’s requirements, mainly on the framework and methodologies established in the early software development stage. Apart from that, there are also a few factors to consider before picking those development tools that will be the backbone of the project. In other words, the most important thing you need to know about software development is that developing tools are just too vital for software development to be overlooked.
The software tool is only as good as its software development process. Before a programmer starts writing the code, every detail such as specifications, framework, programming language, design, and goal must be determined. Likewise, having these in place will also help when choosing a perfect software development tool. The following factors will help you choose the best developer tools.
You wouldn't teach a fish to fly, so why would you use a Windows Desktop application for web deployment? Again, it's imperative that the software development tool is relevant to the given project's environment and applies to it perfectly.
Software development tools can also be used within a company to standardize. With a development tool, the company can move developers quickly between projects and creates one standard across all projects.
The collection of software development tools in the project must be, in fact, applicable to the project from the first software development phase to the completion of the project.
A development team's experience with development tools should be taken into consideration. If the team is familiar with a software tool and the same tool could be useful to the project, it's a classic case of a win-win situation with a promise of a better workflow throughout the project.
All developing tools have a learning curve, and some are easier to integrate into a team, while some are more challenging to add. Things like how much effort and time is needed to use the development tool should play a significant part in the decision-making process.
There are software tools for creating, and there are developing tools for debugging- for this reason, there are different categories of programmers' tools. The top 10 software development tools in 2022 are listed below.
Embold
As a software analytics platform that can analyze source code and uncover issues, Embold can save plenty of time and energy on fixing bugs and ensuring a program has security and maintainability.
Best Features:
o Embold plugins allow the developer to see the errors and vulnerabilities as they code before making commits.
o Anti-pattern detection makes sure there is no compounding of unmaintainable code.
o Easy to integrate with GitHub, Azure, Bitbucket, with plugins available for IntelliJ IDEA and Eclipse
o Faster and deeper checks across ten programming languages
NetBeans
Written in Java, the fastest web, mobile and desktop framework, NetBeans is a great open-source development tool. It uses C/C++, PHP, Java, JavaScript, and more.
Best Features:
o NetBeans works with any operating system- Linux, Mac OS, Solaris, Windows, etc.
o With features like Smart Code Editing, writing bug-free code, easy management process, and rapid UI development, it's no wonder it's the best IDE tool in 2022.
o NetBeans 8 IDE offers code analyzers, converters, and editors that make updating the newest edition of Java applications easy.
o Contributes to the learning curve of new developers and helps them understand the application structure with a well-organized code.
DBSchema
The ultimate virtual database designer tool, DBSchema, is used as a management tool for any database.
Best features:
o DBSchema supports NoSQL and SQLite, MySQL, Redshift, MongoDB, Showelflake, PostgreSQL, Microsoft SQL, etc.
o DBSchema allows the use of virtual keys to finding data from multiple tables.
o 'Query Builder' allows developers with minimum SQL experience to crate database queries visually.
o Accessible test data generating for database admins and developers with 'Random Data Generator.'
o Builds interactive chards, tables, and report sheets with 'Report Generator.'
Bootstrap
Bootstrap is the best open source and free framework for those developers building responsive websites and mobile-first software with CSS, JS, and HTML. It's a tool to use to develop faster but simpler websites.
Best Features:
o You can customize it according to each project's requirements as an open-source tool.
o Its built-in components are used in accumulating responsive websites with a drag and drop facility.
o Application building is enabled by Bootstrap's plug-ins, pre-build components, responsive grid system, Sass variables, and mixins.
o Great when it comes to quick ideas modeling and building web applications.
Azure
Microsoft Azure, a cloud computing service, can design, deploy, test, and manage web applications or any hybrid could application thanks to Microsoft's global network of data centers.
Best Features:
o Offers various services like mobile services, storage, messaging, media services, data management, CDN, virtual network, etc.
o Azure supports many programming languages - .NET, Python, PHP, JavaScript, and more.
o A detailed pricing list is available on their website.
Dataiku DSS
As a collaborative data science software platform, Dataiku DSS is used by data scientists, data analysts, and engineers to prototype, build and deliver their data products.
Best Features:
o With Dataiku, DSS developers can profile the data visually at every stage.
o 80+ built-in functions allow developers to enrich, blend, and clean their data.
o Dataiku DSS allows developers to build and optimize models in Python or R and also integrate any ML library through code's APIs.
GitHub
GitHub is probably the first thing most beginner programmers learn. GitHub makes code review and code management easier as a collaboration tool and development platform. Its users can build applications and software, manage projects, host, and review their code all in one place-GitHub.
Best features:
o Easy code documentation and hosting from the same repositories.
o GitHub project management tools are task-oriented, helping programmers co/ordinate easily and stay aligned.
o Useful in large teams because of its code security, integration with other developing tools, and an option to access control among the team members.
o It can be hosted on servers, and a could platform, and it also runs on Windows and Mac OS.
o For open-source projects and public use, GitHub is free. However, their pricing plan for developers, teams, and organizations falls in the 'cost-efficient' category.
Axure
Axure is mainly used by product managers, IT consultants, and business analysts worldwide to provide them with a way to produce wireframes, prototypes, and create documentation.
Best features:
o Axure RP can generate prototypes in HTML and provide a link for sharing
o It will be one of the best developing tools in 2022 because it allows several people to simultaneously work on the same file.
o Runs on Microsoft IIS with either a MySQL or Microsoft SQL server database
o Helps with creating and maintaining widget libraries
Codenvy
Codenvy is a cloud development environment that can be used for application coding and debugging and sharing projects in real-time.
Best Features:
o As a cloud-based IDE, you don't have to install or configure Codenvy
o It can be integrated with Jira, Jenkins, Eclipse Che extensions, or other private toolchains.
o It can also be customized using IDE extensions, commands, stacks, editors, RESTful APIs, server-side extension plug-ins, etc.
o It can run across platforms- on Windows, Mac OS, and Linux. It can also run in a public or private cloud.
Send Bird
Send Bird tool is used as a messaging and chat API for websites and mobile apps. It prevents spam from flooding chat rooms and offers scalability for a greater audience volume.
Best Features:
o Send Bird can read and track the status of messages sent.
o Customer support and product recommendation are bot-assisted.
o Offers Call-backs & Push Notifications
o Read Receipt & Delivery Status
The success of your project can depend on what type of software development tool you choose but having the right kind of people working on your project is more vital to the success of your project. By choosing Quantox as your software development and IT solutions partner, you ensure your project is in 'safe hands'- those that will give you a high-quality code, keep the communication and the highest level, be flexible to meet your and your project's requirements and provide you with the top-notch IT service. Launch your projects with the best software development solutions at Quantox Technology and IT Solutions. Let’s Talk!
In our free ebook "The Ultimate guide to software development in 2022" we cover everything you need to know about Software Development. Learn how software is developed and how it can help your business.
DISCLAIMER:
All products and company names are trademarks™ or registered ® trademarks of their respective holders. Use of them does not imply any affiliation with or endorsement by them. In addition, any product names, logos, brands, and other trademarks or images featured or referred to within the article are the property of their respective trademark holders.
These trademark holders are not affiliated with Quantox Technology, our products, or our websites. They do not sponsor or endorse Quantox Technology or any of our products.
Is your business regularly dealing with day-to-day fires? You know that in-house staff is very busy and you have problems finding and retaining new people? The answer to overwhelming IT issues that you are experiencing can be outsourcing. Whether you are a small business or a big enterprise, there are some parts of your IT department that can be handed to a third party to manage and organize. Simply put, it is hard to do internal 24/7 monitoring and management of an entire, often cumbersome, IT infrastructure. Many of the issues that can happen incur additional costs and potential business disturbances. Further failures, hardware, and software disasters, operation disorganization can be prevented. Additional costs can be prevented. Use some help. Provide support to your IT people, too.
If you do research about outsourcing, you will find dozens of reasons why outsourcing is profitable and how it can impact your business. Let us highlight some of the most important that tells exactly what you get:
Additional in-house expertise that you need can be a really expensive investment. New recruitment, employee onboarding, more payrolls - all of this usually demands you to first enlarge your HR team, before you even start recruiting the experts you need. As you may already be very well aware, all of this costs money. And a lot of it. Not only are you paying full employee packages for the IT experts that you need, but you are also paying the same for recruiters and other staff you might need to onboard all those new people. Of course, we must not forget the fact that this will take a lot of time, further costing you money as problems are not being handled, upgrades are not being installed, and more.By providing you with just the right experts at just the right time (usually yesterday), outsourcing can save you enormous amounts of money.
No more waste. No more resource mismanagement that doesn’t yield the wanted results and productivity. By choosing an outsourcing business model, you will have access to the widest range of resources that you don’t have in-house or you cannot afford to bring in-house. A larger resource platform also means you get to make smart moves and balance between proper task processing and quality customer service. An outsourcing partner will help you reach that balance and guide you on how to use these resources.
Free your schedule of simple tasks and use your energy to develop ideas and potential new projects that can generate more income. Outsourcing gives you more time to focus on tasks that require your dedication. Let someone with more experience or someone more knowledgeable handle the work that distracts you. On the other hand, by involving a third party in your project, you are giving your business much-needed time and also a chance to reach sustainable, effective growth.
Your business needs don’t match your storage capacity? A simple solution is to outsource your data storage. Why? New assets are not necessary. On the other hand, the usage of modern technologies is possible without having to hire new IT staff. The highest costs in internal data storage are in administration and backup. If you handle this to an outsourcer, you will experience an overall cost drop. Do not worry about risk mitigation, because your outsourcing partner has automatically saved your data offsite and has a fully integrated system for data restoration within the business requirements.
Closely tied with time management, business focus is something that you can lose with an overwhelmed IT department and unsatisfied employees. With all issues you have to deal with, you simply don’t have time to focus on core things, business goals, and growth. An outsourcing partner can be a valuable, long-term partner. A partner that will provide you time that, currently, you don’t have. You need a professional outsourcing management strategy that can save you from internal and external fires and potential damage to your business’ very foundations.
Let be honest, outsourcing projects can fail. But, failure can be prevented. Success depends on both sides, and, in most cases,proper communication is the right recipe.
Steps for strong Outsourcing partnership
If you want to build a strong relationship with an outsourcing partner, you need to work on:
Techspeak and bizspeak are something that both sides need to avoid. Do not use terminology that the other party doesn’t understand. Speak as clearly and succinctly as you can, provide clear requests because that will lead to a product that you can use. There is no textbook that you can follow to 100% guarantee successful communication. Maintaining outsourcing relationships can be challenging andit relies on transparency, clear goals, and demands, delivered in a timely manner. When you choose your outsourcing partner, always pay attention to their strategy of delivering unique value outcomes. The Quantox approach also consists of the best practices for communication and well-established plans for request delivery.
For a proper outsourcing strategy, details are a must. Details will help you present your vision and goals in the most effective way, reducing the chances of miscommunication, mistakes, and subsequent corrections. Invest time and effort in explaining your project, what you want to get out of it, and what you want your customers to get. You have a totally new range of resources in front of you, but only a detailed project can fully use them.
Achieving the right relationship is possible only with good communication. Do not hide crucial information, good or bad. Avoid long delays in actionable feedback, keep in touch with your partner and inform them regularly of the current status. Let them know how you feel and what your expectations are. Be transparent and expect transparency from the other side.
Network discovery is a part of setting up a quality outsourcing partner process. It requires a careful approach to your internal resources. Engineers and the sales team will need information about servers, firewalls, antivirus software, and other technical parts that are used.
Regardless of the industry, you operate in, our way of reaching the predefined goals is based on an open and transparent environment.This trust makes us easy to work with, while still providing you with an extremely professional team and a high-quality product.Through constant development and improvement, we have learned to listen and understand the clients’ needs. This helps us provide the service that will supply your business with the most perfect solutions. Tonnes of business ideas brought to life through brave and sometimes even crazy steps. None of Quantox’s over 160 finished projects would be possible without a team from 7 different countries that we rely on. All our expertise, experience, ideas, and unique strategies can be at your disposal and provide you with different perspectives. Perspectives that will set you free from feeling that your vision is not fully developed or that some opportunities were missed. You need a new strategy for a journey that, through trust and good communication, will lead your project to a functional reality. Let’s find out together how we can make it happen.
Impressions of the WHOIS Hackathon 2021 winning team
The impressions of the WHOIS Hackathon winning team Redtech Zemare confirmed the assumption of the organizers - "domain themes'' not only can be interesting to developers - but can provide insight and knowledge about the part of the IT industry that is not so often in focus.Young software engineers Milan Cupać, Željko Lučić, Igor Stevanović, Andrija Jelenković, and Damjan Denić created the best application during a two-day WHOIS hackathon jointly organized by the Serbian National Internet Domain Registry Foundation (RNIDS) and Quantox Technology on September 25 and 26.
The task for the selected teams was as follows - within 48 hours create a mobile application that provides WHOIS and DNS data - meaning offering answers about free or registered domain names in domain spaces around the world, primarily national .rs and .srb domain spaces.After 48 hours of monitoring and final 10 presented solutions, the jury consisted of Petar Slović, Director of Innovation, Quantox Technology, Damjan Tomić, Technical Director of IT Biz Solutions, and Dušan Stojičević, the former co-chair of the Universal Acceptability Group (UASG) ICANN, had a difficult task. Solutions were evaluated according to the following criteria: completeness of the solution, the relevance of the solution (possibility of real application), UI / UX (design and ease of use of the application), quality of code (ease of maintenance), scalability (whether the application can work with the real number of users) and the presentation of the solution itself.The result of the two-day process was 10 fully functional applications whose code quality was at a remarkable level, having in mind a very short deadline and teams with different levels of experience (one high school team also participated in the hackathon). Each team approached the project task in an original way and used completely different technologies.Through the link, it is possible to access the winning solution on the Github platform.A video presentation of all solutions from the hackathon is available at the link.Why the WHOIS hackathonWhat happened behind the scenes during the 48 hours of work on the applications? What was the biggest challenge in the process of creating the application? Did working with Cyrillic domains challenging and how much?Members of the winning team shared their impressions and answers to these and other questions - why they applied, what they knew about domains and DNS, Universal Acceptance before, and what they learned after the hackathon.Listen to the experiences of the Redtech Zemare team.https://www.youtube.com/watch?v=YO8lDmd8QvkSource: https://www.rnids.rs/lat/novosti/whois-hakaton-kako-se-prave-whois-mobilne-aplikacije
By Filip Dimovski
The world has become more connected than ever before in human history, and with the growing complexity and advancement of integrated circuits, hardware and software, security has become an even more important topic of discussion and concern. Information technology is encompassing and enriching our lives, but that also brings new challenges that we ought to tackle, in order to ensure technological advances are used in an ethically proper manner.
The 30th of November was introduced by the Association of Computer Machinery as the International Computer Security Day in order to raise awareness of the security implications technology has brought forth.This blog article intends to mention some of the important aspects of security that we face every day, and give some helpful information on how to improve our security and privacy by employing some good practices.Using many computing resources and online services requires authorization, and checking for the identity of the user that wants to access them is called authentication.
What is usually used for this process is a piece of information that only the user is supposed to know: the password. Passwords are supposed to be long and complex, known only to the user, and kept safe. Passwords should not be a word from the dictionary or contain any data related to the user (e.g. date or place of birth, parents’ names), as these can be easily guessed and derived from public information, or even a conversation with the person. Instead, a user should generate random long passwords and store them in password management software.
For example, have one password to remember that unlocks the password manager, and this software keeps long random passwords of the services you use, which you do not need to remember.Besides passwords, adding to the security of authorizing access to services is the so-called Two Factor Authentication (2FA), where a user uses something they own (a smartphone) to generate via an application (or receive via SMS) ephemeral time-based codes, which they can use to authenticate themselves to the system. This increases security further, as there is one more obstacle for a malicious party to overcome if they intend to break into the system.
Personally, I recommend using smartphone authentication applications instead of SMS, since SMS messages may be intercepted, and the applications cannot be (and they do not require cell phone coverage).Security goes hand in hand with privacy. We’re increasingly relying on free services that allow us to communicate with our friends and family; however, if we take a thorough look at the fine print of their terms and conditions, we will notice that most of them gather our private data, conversations, pictures and other personal information that we willingly give, so they can monetize it, i.e. earn from it, by selling it to third parties and serving us targeted advertising.
This has serious implications for our privacy, as conversations that were meant to stay private now are used to gather more data about us, thus profiling us and learning more about our habits. This information, if not adequately protected from unauthorized access or malicious use, can be used to target users and manipulate public and personal opinions. That is why it is important to set up and use services that offer end-to-end encryption for private communication, where only the parties involved in the conversation can see it, and no one else.One of the weakest links in computer security is the so-called “human factor” - the users themselves. Clever malicious parties can use so-called “social engineering” in order to gather more information about a user and convince them to allow them access to a system or a service. This can be done either indirectly, via email and messaging, or even via conversations in person.
This is why it is important to not share a lot of information about ourselves and not to use that information in any passwords or any methods of authentication.Besides these security considerations, it is also important to mention the importance of using secure and auditable software. Ensure the software you are using is up to date, and that you install necessary software from reputable vendors.
For example, most of the popular Linux distributions offer open-source software and timely security updates, and the software’s code is available to everyone for review and reuse.
Her favorite book is Little Prince. She is a hedonist and passionate traveler. She would like to have more time dedicated to another passion - painting. Her name is Jovana, a creative girl, and fashion lover. She has been a part of our team for 5 years. We want to congratulate her for her work and effort and we hope that she will find more time for some good painting or another great book.
Less stress and more gratitude.
Commitment, loyalty, flexibility, perfectionism, and unlimited effort when the goal and motive are clearly defined.
The first thing that comes to my mind is that I met really dear people and gained real friends, even the future godmother Saska :) (something that I always thought was reserved for school-age and childhood). On the other hand, I realized what the working environment and teamwork should look like, which gave me perspective for further business challenges.
Definitely, there is a big influence. All of us who recruit future colleagues, we represent the company and provide a first impression of the company culture and overall atmosphere. From my point of view, it is a combination of a professional and friendly approach in order to provide as much information and details as possible through pleasant and less formal conversation, with the slogan when we hang out, we hang out when we work, we work.
My first job was in a bank, during my student days. It was hard to reconcile business and university obligations, but at the same time, it was an opportunity to get a bigger picture of how the banking sector works. That somehow directed me to the other side.
Time for myself and my daily rituals :)
Commitment and that you love what you do.
Besides the economy for which I was educated and my work with people with the Quantox team, I would say that my thing is also a sense of aesthetics for interior design, fashion, art…
Certainly something related to the previous answer. During primary school, I wanted to be a painter, which later grew into a hobby.
Some special people, working atmosphere, and the fact that this company operates and grows in such a simple and natural way, which has resulted in today’s borders of Quantox, in a territorial and every other sense.
That I am, for the most part, a big introvert.
Quality music is her groove. And a good running track. Although, coffee is at the top of that list also. When she is nervous we know that she is hungry. Passionate about taking pics, which is good cos when you ask her for some nice photos, you get 15 of them :)Winter is not her friend, Lisabon is. She is Andjela, but for us, Andja. A serious programmer and a true professional. Always up-to-date. It is very easy to create memories with her. Andja, we want to congratulate you for 5 years of dedication, effort, and great work. We know that you will celebrate it with something sweet and a g-drive full of photos :)
Coffee, morning chat with colleagues who are in the office and then checking emails and daily plan: meetings, tasks.
I’m good at running and sports in general. It’s a shame that I don’t have time to dedicate myself more to that.
A pilot :)
To be more confident in myself and the decisions that I make, not to trust everyone, and to grab and take everything that I can.
Of course. I was nervous, but the whole day went really well, with a lot of positive energy, meeting new people, and details about my future project.
During high school, I already, somehow, knew my future path and what I want to do, so at university, it was only a matter of which department to choose. I would say that education itself guided me to become a programmer.
Laugh, sun, dear people, and coffee!
I am totally terrified of cats, even kittens.
Eloquence, perseverance, I am detail-oriented and always willing to help and make people laugh :)
I have been practicing Latin American dance for 10 years and - small, little things will always blow me away.
I gave my maximum effort to every app that I was working on, every deadline and agreement was respected and fulfilled.
A good programmer must have good logic and, for me, that is the most important thing. After that, knowledge, passion, and willingness to always learn something new.
Written by: Vojislav Branović
If you are a writer or want to become one, you will eventually come across some kinds of questions that are very important to be clarified. What is the site review? What is it used for? How important is it to the final users?Who writes and who reads blog posts, why are they so popular and why do you need to know how to write them if you are into a writing job? Here are some tips and tricks that you can use to improve your writing!
In simple words, the site review is a detailed text of some web place, which gives valuable information about the site to the end-user! You need to cover several things when you are writing a site review, such as Validity of Information, the tone of writing and text editing, and the details (the more details, the better the review).
Overview - Give an overall idea of what the given website is. What does it do? What does it offer to the user? How does it work, in general terms? Give the big picture before getting into details.Ease of Use - Emphasize the ease of use. Even though today’s generations are very well educated when it comes to computers, we all want to breeze through the sites we are visiting and to click as little as possible to get the wanted results. Applications and Benefits - Help your readers see how this site would work for them. The reader wants to know how this online service will be to his advantage.
If you are writing a site review article, you should include all features that your site has. That can be Loading speed, Search feature, Ads free or ads, Any filters, Membership, Safe environment, help, financial, Visual appeal, FAQ, community, Plugins or software required, and others. Give your readers a detailed preview of the stuff offered on the website and give yourself the freedom to write in your own words! That will improve the quality of your review!
No matter how much effort someone has put into his website, there will always be people who can find a negative side of it! If you aim to become a successful site reviews writer, you will have to deal with these negative sides, and there are two simple ways of achieving this: Ignore or Spin! Before getting detailed about these two ways, I have to tell you that the clients who pay you to write reviews don’t like seeing negative reviews! That’s why you have to be cunning and try to avoid mentioning this, but still, be objective and give your readers trustworthy information! Yeah, not an easy task, but check this out:
You are hired because of your skills, personal writing voice, and audience reach! So, make your review unique, put your own personal mark into it!Finish with your own final thoughts on the website! Take care of the business, don’t let anyone tell you you are a plagiarist or something similar! Be creative, be free to write in your own words, choose the right words, and the results will come!
A blog post is an article that you write on a blog. It can include content in the form of text, photos, infographics, or videos.
Okay, there are some unwritten rules when it comes to the writing of blog posts, and I will try to be as simple as it can get in the explanations: All you have to do is to follow these 5 easy steps when creating your blog post:Step 1: Plan your blog post by choosing a topic, creating an outline, conducting research, and checking facts. Aim to choose a topic that interests you!Step 2: Create a headline that is both informative and will capture readers’ attention. Be creative and catchy!Step 3: Start writing your post. No matter if you can’t do it in one draft session, do it in several of them, the end result will be the same!Step 4: Use images to enhance your post, improve its flow, add humor, and explain complex topics.Step 5: Edit your blog post. Read your post aloud to check its flow. Make sure to avoid repetition. Get feedback from someone else, do proofread. Keep your sentences and paragraphs short. Long ones will make the readers go away. Avoid being boring!
If you want to be a successful blog post writer, you will have to make almost perfect blog posts! How to achieve that goal? Well, there are certain things you need to follow here, and I am more than willing to share them with you! A perfect blog post must have some basic elements, such as:
Check this paragraph carefully, it can improve your writing, save your time, and make your blog post better:
No matter how good your English is, you will always want help from some of the numerous tools on the web! I personally use two of them:WordCounter: awesome thing when it comes to the keywords density, counting the words, characters, paragraphs! It also shows the reading level, speaking time, and much moreGrammarly: the best grammar tool, period! It corrects typos, bad sentences, gives suggestions, and makes your writing look more professional!
I sincerely hope that these tips and tricks will help you, and if you are still thinking about whether to take this path or not, I hope that after reading this you will make that first step into the world of copywriters and bloggers!
Written by Filip Dimovski
In today’s fast-paced world of software development, it is necessary to deliver a product or a service promptly, while ensuring all the best security practices and considerations are taken into account and ensuring the infrastructure is capable of handling the requests of the modern web and mobile applications. These tasks need to be handled by several different engineers due to their complexity and the many areas they cover.
Development Operations (DevOps) as a software engineering concept involves a multidisciplinary approach, where software development, software and infrastructure security, and systems engineering and administration skills are used to streamline and improve the software development and delivery processes, as well as infrastructure management.The core of the DevOps philosophy is the automation of processes, declaration of infrastructure resources, and reuse of components. Essentially, it sounds like software development, right?Modern software development practice expects the use of software version control, such as GitHub, GitLab, Bitbucket, and others, which foster collaboration between software developers. It allows keeping versions of the code too, to ease auditing and resolution of software and security defects. The repository acts as a single source of truth, that must reflect the current state of software and infrastructure, and a place through which changes can be reviewed and applied in a controlled and automated manner.One key area that speeds up the developmentof software and lets developers do more work is the automation of the lint, build, and test phases of changes introduced to a software component. This is accomplished by utilizing a CI/CD (Continuous Integration/Deployment) system, which consists of pipelines, declarations of steps that need to be executed to accomplish the aforementioned tasks. Such automation aims to find and resolve software issues quickly and efficiently and create reproducible builds of software artifacts, packaged software ready for deployment and execution in different infrastructure environments.
Docker containers are an excellent tool to easily prepare and ship applications as image artifacts that can be run on many different container orchestration platforms, such as Kubernetes. By packing the application and its dependencies (libraries, static content, etc.) in one container image, it can be delivered easily and executed on different environments, and a well-crafted container can be reused on several different environments, such as development, staging, and production. A developer can also run the whole application stack locally on their machine by using Docker Compose or Minikube, ensuring that the way their application runs is as similar as possible to production environment requirements.Applications designed by employing the 12 Factors rules of software development and Docker containers can help achieve the universality and ease of deployment of applications. By leveraging environment variables for configuration, and keeping the all-state outside of containers and inside managed cloud databases, such as Amazon RDS, Elasticache for Redis, and similar, even if the application fails due to any factor, you can be sure that the data is preserved, and the application can be started back easily and quickly, due to the ephemeral stateless nature of containers. Also, many instances of the same application can be run in parallel on an orchestration platform, providing scalability when the usage is growing, such as when many users access the application at the same time.
Besides improving the speed of delivering software to production environments, one of the most important responsibilities is to ensure software, data, and infrastructure security. Together with Information Security (InfoSec) engineers, DevOps engineers can automate processes that check for security compliance, and adherence to standards, such as ISO 27001 and PCI, ensuring the software and infrastructure are secure for performing tasks related to monetary transactions, medical research, work with sensitive data, and similar.If the software constitutes the main driving implementation of processes, the infrastructure is as important in ensuring the software works according to requirements. The DevOps way of managing infrastructure uses declarative formats, such as Terraform or CloudFormation templates, to define cloud resources and manage them in collaboration with other DevOps team members and version them in a code repository, and audit them using automated tools. The templates allow easy creation of new and modification of existing cloud infrastructure resources, and also constitute an excellent tool to ensure business continuity, in case disaster strikes and everything needs to be recreated from scratch and as soon as possible as part of disaster recovery and disaster contingency planning processes.
Lots of tools allow us to follow how the infrastructure resources and applications are performing, such as Prometheus, Grafana, the ELK stack, by collecting metrics and log data, allowing us to correlate them and discover points of slowdowns and contentions, discovering issues with the applications and infrastructure, and offer us a great tool for resolving such issues. Monitoring can be automated to inform teams when their applications do not perform as well as expected, and even allow the system to roll back in case of failures, increasing its resiliency and ensuring services are up and running for the clients.One of the main concerns is data integrity. As most software represents a way to work with data, we must ensure that data is preserved in case of software errors, cyber-attacks, or disasters. That can be ensured by setting up automated replication of data in different data-center regions, or even different services, snap-shooting of stateful resources (databases, servers’ volumes), automated backups, and by defining a life-cycle policy of the data - how long it needs to be preserved and how. This can all be automated and performed consistently, by leveraging declarative infrastructure tools and writing scripts to perform automated backups according to schedule.As we can see, many of these topics can be enhanced and many parts of the applications and the infrastructure can be improved by following design principles and processes defined by the DevOps software development philosophy. By leveraging the multidisciplinary approach and automating most of the processes, developers can ship software faster, and businesses can be more certain that things are going to perform well within the expectations.
One of the reasons why Quantox was able to become a leading IT solutions company is its approach to DevOps. With special consideration to software development, infrastructure security, system engineering and administration, we achieved a streamlined software development and delivery process. Our approach and automation of the process means your software can be build faster and with better performances. Let's Talk!
Written by Davor Minchorov
If you want to devote your time learning web development I will present to you the path that I think is the best to start this adventure, specifically oriented in the Laravel and VueJS world, and share some tips on how to get better at it over time.
This blog post is aimed at anyone interested in the web development world, either who started learning wants to start learning, or even people who are a few years into it and want to get some ideas that might be useful for them.
I must admit, there are a ton of web development learning resources on the internet and too many options for beginners to start from when they are looking for a path in the web development world, and some people even give out some crazy advice like:
thinking that it would be as easy as they say it is for someone who has no idea what he/she is doing.
While these places on the internet have their usages, you can't learn from a course site where you don't even know the authenticity of the person who teaches you things, you need to rely on ratings and other people's word. As for W3Schools, it's more of a documentation site than anything, where you can just search for what you need to get an idea of how things work and use that into your project when you get to that point, but it is not a site you can learn from just by reading.
Udemy has some great content creators, but you need to know which one to learn from and how detailed are the courses. So can you learn programming online? Bottom line- it all depends on what you want to learn, resources you're learning it from and who's teaching you.
From my experience, I've only watched courses from one person on Udemy, which is Maximilian Schwarzmüller from Academind, I watched his Vue 2 The Complete Guide 12 hours course a few years ago when I was starting a project with VueJS.
The same thing applies to YouTube, there are a ton of content creators on there but you need to know which ones are the best, and it's hard to figure that out when you are new to this world.
Whatever course creator or content type you choose to learn from, just remember to investigate the creator, his experience and the way he explains things, the way he speaks, and how many details is he/she going into.
There are multiple sources where you can learn from so you can choose whatever you like the most or fits your style the best.
I personally prefer video courses with quality content that focuses mostly on a specific topic (if I am interested in that) or a web app building type of course where the course creator uses multiple tools, techniques, and technologies to build a whole app from scratch so that I can follow along.
Whenever I want to learn something new, either programming, concept, technique, tool, technology, or a programming language, I start by searching for a course or a video on that topic. Once I get enough knowledge and get a good idea of how things work, I either search for another video or a whole course that uses the tool, technique, programming language in combination with the technology stack I am interested in just to see how things can be connected together.
After that, I start integrating the new learnings into my project so that I can understand the new knowledge even better.
Some things cannot be found in a deep dive video course, so I look for a book or an e-book that has that tool, technique, technology, or programming language and read it to get an even better understanding of it.
Books (or e-books) are great because some of them are written by very experienced people in the industry and can provide a lot more information than a video course on any video platform ever will.
Asking questions is one of the most important skills if you want to ever learn from someone else in the community.
I started just by reading forums at the beginning of my career, on the Laracasts forums, where I learned everything related to the basics of PHP, Laravel, and JavaScript, VueJS, to the more advanced programming concepts like Domain-Driven Design, project architecture, event sourcing, command buses and domain events, design patterns, SOLID Principles, and similar concepts, tools, and technologies.
If you hang out long enough on one forum or in a community, you will start collecting a lot of learning resources and learn so much more, which will boost your knowledge to the next level.
I also hang out on a lot of Slack and Discord chats which are very useful, because there are a lot of community members and there are a lot of people who need help and I've learned so much from them just by reading their conversations.
This is one of the most useful skills that helped me grow so much in a short period of time. Laracasts was my home for years (even though I don't hang out there anymore, more active on other places like Reddit, Twitter, dev.to, Hashnode, Medium, etc.)
I've helped so many people, just trying to solve things and improve my searching and figuring out abilities that also helped me later on when people found me and recruited me for their projects, clients, companies, or even met people who shared a similar interest and was part in a table talk style meetups.
It opens so many opportunities for personal branding, and it helps you market yourself to the world where people can find you and offer you a job or a business opportunity.
Newsletters are a great way to discover news, tools, learning resources (articles, blogs, books, videos, etc.), which can boost your knowledge to the next level.
I am subscribed to a lot of them, Some of them include:
and others to keep up to date as much as possible.
Now, I know that it is impossible to keep up with all of the new things that are coming out in this web development world, but I do try to learn something new every day so that I can use it if I need it in my projects or someday in the future. That way, I get a better full picture of what I would need in a whole project, besides working on a project directly.
Besides working on full-time/part-time / internship job projects, I always work on something else besides the full-time job, like my personal projects to experiment (like this personal website and blog here) with tools, techniques, or technologies that I do not usually use in my daily job.
Now, I know everyone wants to get paid to learn and/or build projects but working on personal projects or helping out other people teaches you so much that it can help you get a better job, become better, and even ask for a higher salary/rate per hour in the future.
Learning on a full-time job is all good, but sometimes that job can be boring or not really useful for the career when you are fixing bugs or work on useless tasks that do not teach you anything new.
That's why I recommend for everyone to start building their own personal website and blog, deploy it somewhere so that people can see it.
Also, don't forget to work on a personal project for a longer period of time that you might need to use for yourself, just so that you learn and experiment in your free time for fun.
Another option is to help out in the open-source world where you contribute to projects by helping other people.
Work enough so that you don't burn out so much but still learn something new every day.
Same as the video courses, there are so many blog posts related to one specific thing that you might find useful or build a whole app based on a series of articles on a blog.
There are many blogs that can be useful to follow but I would suggest checking out dev.to and Hashnode first and then finding out people who have blogs and that you trust them based on their authenticity and the community you are a part of.
I use Feedly as my preferred RSS reader to follow the various websites and blogs. I also have the daily.dev new tab chrome extension that shows me new articles from different blogs to read every day.
A few years ago, I started watching coding live streams of other people building projects to understand and learn how a person thinks when they build a project from scratch with the tools, technologies, and programming languages I use or like.
There's always something new to learn from someone else and you can incorporate it into your own projects (personal or not).
The interesting thing is that I've seen different approaches to how people structure their code, how they approach the database or project design, the pros and cons of some tools in some scenarios, and so on.
I know that many people think that social media can be a distraction and you should stay away but I've learned so much from people on Twitter because there are a lot of valuable Twitter threads, tips and tricks that people share and you can't find them anywhere else.
There's also a lot of useless content that is irrelevant but I try to ignore that part and mute profiles to keep it web development specific only as much as possible.
The first thing I would do if I want to learn a new programming language (example: Go), I'll try to get to know the ecosystem and community so I would do the following:
There's no one way to learn web development just from one source and hope that you will get a job after a 6 months academy or a few video courses. It might take you a while but always be building something, helping someone, reading something, watching something. It's really up to you how much time and effort you are willing to put in. IT is not an easy career choice.
Use the community and the learning resources to become a better developer, designer, DevOps, or QA engineer.
Quantox is dedicated to providing the right resources and knowledge for their employees, but also for anyone interested in programming, and willing to learn more and grow in IT industry. Starting September 2022, we are launching our very own Quantox Academy with a goal to provide expert IT education. Stay tuned and follow up on the courses we'll be presenting in Fall 2022 and the opportunities you can seize with Quantox Academy. However, if you have an idea you want to share with us, or a wish to work with us on a project, let us know. Let's Talk!
This year is important to us for several reasons. Celebrating 15 years of successful work, we have expanded our business to Montenegro and Bosnia and Herzegovina, and we also got a new challenge - 247 open positions! The fact that we have reached the number of 350 employees speaks about the ability to successfully open and close positions. An impressive number, but how to get it? What puzzle has to be “solved” to get a task like this? And most importantly - how does it affect the team and complete work organization?How many clients? The number of 247 came from a complex client structure. If we can divide them into groups, we would have existing clients, partner companies from the region, local representatives of global companies, large IT centers, and our partnerships with corporations like Microsoft and vendors like Lex Wear. Project phases and industriesDetails about projects that are most important to developers are that the open positions are referred to several projects in different phases of development. They will work on building projects from scratch but also on maintenance and improvement of existing ones. Integration within existing systems will also be included. Implementation, migration, and adjustments with security standards within the partnership we have with Microsoft which concerns the sale of Microsoft Azure licenses will also be a part of the work. Projects come to us from different industries - fintech, digital entertainment, retail hospitality, construction, sports organization. Tech skills and seniorityThe structure of the positions is very diverse. Most of them refer to JS and its frameworks - Angular, Vue, Typescript, React, Node, and their combinations. PHP and Java are present in smaller amounts and .NET, QA, Mobile developers, and Salesforce developers are also on the searching map. Developers of all levels will be included in this process. We also have a plan to start junior to medior training, where talented beginners will undergo 12 months of training with a mentor which will be completely free for them. Through whole training, developers will be, of course, duly paid.
When we get a large number of positions like this, what most people don’t see is how exactly a meeting with a client looks like and what they actually ask from us. Negotiation of a large number of positions Primarily, what brings you to that first meeting with an important client are reputation, recommendations, achieved results, capacities, and operational capabilities. They can also be interested in a company's experience with certain technologies and all these things can set you apart from the competition. However, it is important to highlight that this is just a ticket for the first meeting with the potential client. That first meeting usually goes smoothly, most of the time C level is present and the conversation is about business in general. Lack of experience could make you think that everything went well and it’s done - the job is yours. However, the negotiation part is just about to begin. After that positive first impression, further conversations are about specific things - checking references in terms of providing a list of contacts where clients can check them, meetings with our Tech, Project management, and HR team. It is important for the client to truly understand what kind of company we are, what types of projects we do, what technologies and tools we use, and what is the seniority structure of our team. The necessary information can also be our way of measuring the results and complete the development process analysis. Often, they can ask for case studies and financial data in order to define whether we can or cannot financially handle the project. After that, mutual visits and further series of online meetings are arranged. Work reorganizationWhat comes with the plan of hiring a large number of people is an inevitable question - how will that affect our current work organization? In 2017, Quantox went through a 100% employee growth for the first time. The doubled number of people also meant increased obligations and tasks for different teams. Offices have been opened, developers started their first tasks and that year has given us a solid foundation for further expansion. The test of our organizational structure was definitely the pandemic time in 2020 and transition to full-time work from home. The benefit of 2 months of remote work was previously on and it helped us tremendously to easily slide to full remote mode. Our employees got used to new working conditions relatively quickly without a negative effect on results. Such changes have taught us which business moves were done right and how to be ready to welcome and respond to new challenges of a dynamic market and planned growth in the future. Our daily task is to improve the process of introducing our culture and work system to new people and we are always open to ask for additional support in leading regional teams, project management, higher management, and legal assistance.Providing a large number of job opportunities is a long-term goal. Some of them will be opened, others will be closed. The dynamics of the business, as well as the client’s requirements, often create a demand for a large number of people. Having in mind the development of the market and further growth of the company, we believe that a high level of need for staff will be present in the long run. Our focus in responding to such demands is on standards of recruitment and team quality that we strive to maintain. We want to continuously have a large number of open positions while further maintaining our standards for team expansion. Our quality is and will be primary in the future.
They say that the first year in business is always hard. They also say that if you are not losing money in that first year you will probably be ok. For us, the first year of our business was unforgettable.We will always remember how much coffee we drank, how many days without sleep we had, how many cooperation requests were sent back negative or we didn't get any response at all. But we started this game and quitting was not an option.The first year, but also the next couple, were, as they usually say - one-man jobs. However, the situation is starting to change in 2009. And then it hit us. A job is so important that if you do it right, it opens you with so many opportunities, but you are in trouble if not. It was a renowned client from the automotive industry, the market of Great Britain.What usually comes with an important contract that is so significant for further progress is a great sense of responsibility. A small team started this path just a year ago, and now that exact team has to deliver a serious project that, if done right, can mark your company as a serious player on the market.But imagine the technology and equipment that was available 15 years ago. Today we will call that kind of work a rough and ready approach. Available connection speed for development and further possible refinements would today, at least, cause tremendous stress. We were working in a small office, without any additional accommodation or benefits that we can see today in the IT world. Analysis of every possible and impossible step was a daily job and of course that we were sometimes asking ourselves why we chose what we chose, especially when mistakes were made. But we managed to pull it off. The doors were open and we didn't want to go back. We delivered the project on time and the further task was to repeat the success and build a reputation. And we did repeat it. More than 120 times.What we have learned from our first business year? Our approach was good but it needed to be better and to progress. 15 years later, we are modernized, better coordinated, and nurture the same “deep analysis” approach to every project entrusted to us.
written by STEFAN RADOSAVLJEVIĆ
The main thing when you start learning any programming language is to have a great resource from where you can start and spend quality time. The whole learning process is much easier when you have some great guide, at least to know what are the most valuable docs and tutorials.
The usual way to start learning is through video lessons. Ups, wrong!
The way that is much better is to go with the documentation first.
If you want to be an iOS dev, you need to have one of the Apple products (laptop or desktop) and an iPhone is desirable but you can find simulators in Xcode so it can replace the iPhone.
Xcode is the main IDE for making an iOS application. It provides everything you need for programming, including simulators for every device that Apple supports. You can find the built-in documentation inside the Xcode, you can debug your code, track the performance of the application, and much more. In one sentence - All in one.
Let’s take a closer look at the swift road that I am trying to follow.
It is the learning curve for beginners and also some advanced info. Let me unclutter some things in the beginning. Basic stuff can be swift as a programming language, Xcode, and playground part of the Xcode where you can check and test small codes and play in swift in general. Common or next step should be to get to know about Human Interface Guidelines.
In the deep, it can be app structure and design pattern as oop and package manager, testing tools, and deployment.
If you want to know what's the one place you can learn everything from, take a look at this documentation collection.
My learning process starts with going through swift documentation.
You can find everything useful about getting to know a language. In the end, it is just reading with concentration.
After that, you can visit HackingWithSwift which is a little more organized with lessons and of course, the main thing that you can find in lessons or blog form is https://www.raywenderlich.com
The most helpful information you can get from the books:
In those books, you can learn through the examples of mini-projects.
The most important thing to me is to get knowledge of some inevitable stuff in programming. You can find this part of the blog everywhere in the programming world.
So in the meanwhile, you should pay attention to the design patterns and architecture, also you need to pay attention to the project structure.
Which design pattern you need to apply depends on the type of application.
You can pick MVC or MVVM design implementation in your project and clean architecture. The difference is mostly in whether you want to use UIKit or SwiftUI. Once again this is the most popular design pattern.
This is the one way of programming that you can divide on MVC or clean architecture. This is the traditional way of programming with storyboards which requires mostly applying MVC pattern and you can use UIKit with clean architecture implementation which looks like dry coding without storyboards (visual representation of pages in the device). This way of programming is better (in my opinion) because you can better understand what is going on in the code when you merge in git or resolve conflicts. The only thing that is a little odd is because you need to build your project to see changes.
The other similar way that I have already mentioned above is SwiftUI which combines these two options. You can write only code without storyboards, but you can check changes (visually) in the preview window in the Xcode.
Model-View-Controller is one of the building blocks of Cocoa packages.
The three roles are:
Model - The objects that hold your application data and define how to manipulate it.
View - The objects that are in charge of the visual representation of the Model and the controls that user can interact with.
Controller - is the mediator that coordinates all the work.
The project structure with MVC in use.
Model-View-ViewModel is a structural design pattern that separates objects into three distinct groups:
Models - hold the application data. They are usually structs or simple classes.
View - display visual elements and controls on the screen.
View models - transform model info into values that can be displayed on the view. They are usually classes.
It is the conceptual application architecture for scale and can be simply described as an onion layered architecture. It can be split into VIPER and RIB’s implementations.
The other design patterns that can be in use are SIngleton, Delegate, Observer …
After all of the process, you can watch some tutorials.
My favorite is from the Stanford YT channel.
A very good channel where you can find explanations is CodeWithChris.
Please check the Developer app on iOs or MacOS.
For more information and interaction with real developers, you can check the slack group - ios-developers.slack.com. Do not expect to be an iOS developer and find a job after a couple of months, the learning process is much longer.
Quantox knows that having the right resources is the path to becoming an amazing developers. That's why in our organisation our people have access to some of the best learning tools in order to master iOS development. Today, we have some of the best iOS developers in the country because we believed in our people and supported them in their growth. With Quantox, your iOS app is built by the people who've been learning it right and doing it even better. Let's Talk!
We’re excited to announce that Quantox is heading to SaaStr Annual 2025 — the world’s leading gathering for the global SaaS, AI, and Cloud community!
From May 13th to 15th, more than 10,000 founders, executives, and investors will come together at the San Mateo County Event Center in the heart of the San Francisco Bay Area for three packed days of tactical content, networking, and next-level innovation.
As one of the largest SaaS events globally, SaaStr Annual is where the best in B2B meet to share insights, spark partnerships, and shape the future of tech.
We’re proud to be part of it — bringing the Quantox crew, our passion for building powerful products, and our experience in scalable software solutions to this incredible stage.
Are you attending? Let’s meet, exchange ideas, and explore how we can build something great together.
Let’s talk SaaS, AI, and the future of cloud tech!
Location: 1346 Saratoga Drive, San Mateo, CA
Once again, teams from tech companies are stepping up for something bigger than the game itself! On April 26-27, 2025, they’ll compete in the most meaningful Counter-Strike 2 tournament of the year—where every round played helps create a better future.
For six years, we’ve proven that gaming is more than just a pastime—it’s a force for good. We’ve helped equip maternity hospitals, launched reforestation projects, and built something far greater than competition: solidarity.
And this year? We’re going even further.
Who can join?
Any IT company ready to play with purpose! Each company can register up to three teams and contribute to the donation fund.
The mission?
Just like before, Quantox is leading the charge with a starting donation of 1 million dinars. Every contribution fuels the cause—helping a Serbian maternity hospital and ensuring better care for mothers and newborns.
The impact?
Your participation directly helps provide necessary equipment where it’s needed most. Every match played brings us closer to making a real difference for families across Serbia.
The reward?
Unforgettable matches, an even stronger IT community, and the knowledge that you’ve been part of something truly important.
Registrations close on April 23rd!
Sign up your team now: https://hitturnir.com/
It’s time to play, connect, and give back — see you in the game!
Serbian IT companies will unite on April 20-21 for the charity tournament.
Previous years were marked by playing for Serbian maternity hospitals, and the IT community did an outstanding job. Generous donations were distributed to hospitals in Pirot and Priboj. In 2024, companies will come together for a new cause - Serbian forests and the Quantox Foundation users.
Companies can register up to 3 teams and contribute financial funds to the common fund. Just like in previous years, Quantox is kickstarting with a donation of one million dinars.
The seedlings transplantation will be organized in collaboration with Zvezdine igre, aiming to achieve a noble mission - one million new trees in Serbia within the next 7 years.
We anticipate the HIT CS 2 crew to expand this year with new companies and teams that will compete, enjoy the game, and once again showcase that the greatest victory is Humanity.
Register your team by April 18th.
For team registration and more details, visit: https://hitturnir.com/
It's time to continue to play even harder!
Quantox team is set to attend the Money Motion 2024 conference to explore new opportunities in fintech and blockchain.
Money Motion 2024, taking place on March 21 and 22 in Zagreb, promises to be the pulse of FinTech innovation. Attendees can expect the latest updates, groundbreaking insights, and exclusive interviews covering finance, payments, crypto, and technology.
This conference presents an excellent opportunity to delve into the present landscape of payment methods and investment diversification, while also gaining insights into projected future customer expectations.
Q crew, led by Nemanja Lazić (CBO) and Ivan Ćirić (CTO) will be in Zagreb to network, share expertise in the FinTech field, and offer top-notch software solutions.
Location: Zagreb Fair, Avenija Dubrovnik 15
See you in Croatia!
Our next stop is Las Vegas, a go-to destination for the latest technology and innovations!
The Acumatica Summit 2024, is scheduled from Sunday, January 28, to Wednesday, January 31. This four-day event offers a prime platform for networking, learning, and training. Attendees can expect visionary mainstage keynotes, informative breakout sessions, and inspiring customer stories that highlight the latest industry-defining innovations and trends.
Acumatica Summit is the perfect destination for connecting with experts, discovering cutting-edge technology, and fostering business growth.
Our Q team - CEO Filip Karaičić and Head of Managed Services Dušan Milojević, will be on the spot participating in interactive sessions and offering high-quality software solutions and unique digital experiences.
Location: The Wynn Hotel, Las Vegas
Looking forward to meeting you in Las Vegas!
The return of Miljan Simonović to our company marks not only the comeback of an experienced professional but also the continuation of an exceptionally fruitful collaboration. During the past period, Miljan has demonstrated his qualities and dedication, and we have been pleased to follow his professional development. We maintained contact, waiting for the right opportunity to embark on a shared journey towards an even more successful future.
Miljan's return to the role of a Project Manager enables him to, step by step, realize his professional ambitions. We continue to build our story together, with full confidence in Miljan's ability to achieve outstanding results.
My first encounter with Quantox was during my studies when I started as a junior Project Manager. Before that, I was active in the nonprofit sector, organizing events and small projects. So, Quantox marked the beginning of my corporate career. I worked on numerous projects, learned, tried new things, and developed myself. Despite the later challenges of the pandemic and uncertainty, Quantox is a company that truly cares about its employees and made an effort to ensure that challenges were not felt, and teams adapted well to remote work.
Regarding my initial experience with Quantox, I would highlight two things. Firstly, the excellent mentorship I received. I believe that at the beginning of one's career, having a good mentor is crucial. They provide support for learning and development while also assigning real and challenging tasks that help gain experience – something I definitely had at Quantox. Secondly, the diversity of projects. Working in the outsourcing world allows constant learning through different projects and working with different clients. Each new project is a unique story, a new idea to be realized, and new challenges to overcome – each new experience contributes to making future work easier.
Absolutely! In the past period, I have matured and gained a lot of experience, working with startups, smaller companies, and even corporations like IBM. Now is the right time to leverage that experience and take project management to a higher level. Quantox has also matured significantly, working on internal organization, growth, and strategic expansion. Despite industry challenges, there's no better way to progress than by solving problems and facing challenges.
The core of my career has always been communication with people and working on various activities. The type of projects has changed, ranging from in-house product development to outsourcing projects and improving internal processes. Industries have also changed – from education to healthcare, cloud services, and blockchain. However, my role as a Project Manager has remained consistent, helping teams develop outstanding products.
Primarily, in improving organization and processes. I've had the opportunity to work with numerous startups and scale-ups in establishing PM teams, creating custom PM frameworks, and structuring internal processes. Quantox has made significant progress in internal organization since my first time here when there were around 200 employees, so I see room for further improvement and stability to support the company's continued growth. Of course, my primary focus is on project delivery, and my previous experience in different industries will make it easier to work at Quantox, where each project is innovative in its own way, depending on the industry, technologies, and the client's imagination.
As a global challenge that has been widely discussed recently, I would mention remote work. It's much easier to work with a team that's in the same room because co-location facilitates effective communication, team building, and problem-solving.
The pandemic has brought a new normal – distributed teams and remote work, but the post-COVID era is trying to reintroduce office work through hybrid models. It's up to project managers to find the best solution for their projects and teams. Additionally, there are constant industry changes, a constant influx of new methodologies, frameworks, and tools – all of which need to be followed to stay up-to-date and deliver the best results.
Client satisfaction and team fulfillment. Although project managers don't create tangible value by writing code or creating content, enabling smooth work, leading teams, and solving problems are also crucial for a successful project. The feeling within the team when a project is completed and delivered, whether regularly through sprints or in phases, is highly motivating. When all of that is delivered to the client, client satisfaction is another motivator to continue delivering quality work.
New York is the place to be when it comes to attending one-of-a-kind affiliate marketing events!
Affiliate Summit East is a conference where more than 3500 advertisers, e-commerce sellers, publishers, and tech suppliers will gather from July 31 - August 1, to create partnerships and grow their businesses.
ASE has been rated in the top 5% of events in the world and its Meet Market has a special “speed networking” setup style for the most efficient way to build partnerships.
Quantox team will be in New York to share the experience, strategies, tips, and tactics with other experts in the industry. As a leading software development company, we will be there for all attendees interested in innovative software solutions and unique digital experiences.
Visit our booth No.1609 and meet the Q crew - Vuk Popović / Founder, Filip Karaičić / CEO, Danijel Petrović / COO, and Marko Ristanović / Resource Manager.
Location: New York Marriott Marquis Times Square
See you in the Big Apple!
Quantox ekipu i ovog leta očekuje neobičan i jedinstveni timbilding. Čačak je ove godine imenovan za prestonicu kulture, a mi se okupljamo upravo tu gde je pre 17 godina počela Quantox priča.
Već osmu godinu za redom, Čačak je domaćin festivala Dani urbane kulture u sklopu kog muralisti iz zemlje i sveta oslikavaju prepoznatljive građevine ovog grada. Ove godine će, uz pomoć lokalnih street art umetnika, jedan od murala biti posvećen Quantox-u.
Prirodne lepote Ovčarsko-kablarske klisure su nadaleko poznate, a mi smo iskoristili posetu ovim krajevima da oformimo i budemo deo jednog novog i autentičnog spektakla, a to je - Moravska Quantox regata. Sa uigranim timom ekipe Discover Serbia osmislili smo nezaboravnu plovnu avanturu klisurom.
Katamaran, čamac ili sub-daska - izbor je u potpunosti naš! Quantox tim ima slobodu da izabere kako će doživeti magičnu Zapadnu Moravu.
Ove godine smo hteli nešto drugačije. Zato smo rešili da probamo nešto nesvakidašnje - Quantox će biti partner lokalnog muzičkog festivala - Uzlet Fest - u sklopu kog ćemo imati i naš Quantox Electro Stage.
U okviru samog stejdža nalaziće se i chill out zona, kao i Barbot 2.0 - unapređeni robot koji pravi koktele za sve posetioce. Istovremeno, a u duhu Quantox-a, radimo i na podizanju svesti o ekologiji i očuvanju životne sredine. Dok Barbot priprema piće, svako ko donese 5 praznih limenki ili plastičnih čaša dobija besplatan koktel - jer Svaka Limenka Se Računa.
Mnogobrojni specijaliteti, kultura, istorija i zanimljive destinacije nas čekaju - sve što Čačak ima da ponudi ovaj vikend je namenjeno upravo nama!
Nova avantura za stvaranje uspomena uskoro kreće!
Affiliate World Conference is a place where the industry’s brightest minds absorb mastermind-level content on stage!
The world’s top affiliate marketers and e-commerce entrepreneurs will meet in Barcelona from the 12th to the 13th of July, and represent actionable insights, data-driven knowledge and innovative ideas.
As a leading software development company, with a wide range of services, Quantox will be on the spot, offering quality software solutions and outstanding digital experience to more than 5000 attendees. Drop by our booth C36 and meet the Quantox crew - Filip Karaičić / CEO, Danijel Petrović / COO, Petar Slović / CINO and Marko Ristanović / Resource Manager.
Can you think of a better way to network, interact and look for potential collaboration?
Location: Fira de Barcelona, Spain, Avinguda de la Reina Maria Cristina, s/n
Booth: C36
We are thrilled to meet you in Spain!
Adriatic Valley is a tech community currently located in Banja Luka.
With the aim of professional networking and career development within the IT industry, this community organizes various events such as panel discussions, meetups, and workshops.
Adriatic’s upcoming event is a C-level panel #2, in Belgrade. Quantox will be there, with our founder Vuk Popović. The main topic is ChatGPT vs The Future of Software Engineering, and all the participants will share their thoughts about the influence of ChatGPT on this industry.
The panel will be on June 29 @ Dorćol Platz, starting at 6 PM. If you want to attend, you can register here.
Looking forward to listening, sharing experiences, and meeting great people!
Quantox Technology se priključuje misiji prikupljanja novčanih sredstava u okviru donatorske večeri koju organizuje humanitana organizacija “Srbi za Srbe”.
Donatorsko veče biće održano 20. juna u hotelu Royal Residence u Čačku sa ciljem pomoći porodici Bešanski, kao i Narodnoj kuhinji na Kosovu i Metohiji.
Domaćin dogadjaja biće proslavljeni košarkaš Srbije Aleksa Avramović, a sve prisutne očekuje bogat program! Cena ulaznice je ujedno i donacija - minimalne vrednosti od 100 eura po osobi. Pozivamo sve zainteresovane da učestvuju u sakupljanju 50.000 eura i doprinesu ovim humanim ciljevima.
Humanitarna organizacija “Srbi za Srbe” u proteklih 18 godina prikupila je više od 11 miliona evra i pomogla više od 3 hiljade porodica.
Pridružite se akciji i podržite one kojima je pomoć najpotrebnija!
Prijave za donorsko veče poslati na e-mail adresu: donatorskovece@srbizasrbe.org
Više informacija je dostupno putem linka: https://drive.google.com/drive/folders/1dCaiaLw3YY4K7l81y4nIeEzoDfIsp2Or
More than 300 companies from different industries and from 80 countries will meet in Bucharest from 7th to 9th of May with the common goal to network, learn and share their practice.
As the largest European hub for affiliate marketers, digital companies, monetization platforms, entrepreneurs, content creators and social media specialists - the AW Summit conference gathers all those who are experienced in their business fields, willing to exchange ideas and build new business relations.
With excellent keynote speeches, workshops, expo, and networking events, we are proud to be part of such a event with Quantox C level crew - Vuk Popović/ Founder, Filip Karaičić/ CEO, Danijel Petrović/ COO and Marko Ristanović/ Resource Manager.
As a leading software development company with a diverse team of tech professionals, we are creating top-notch software solutions and offer all-around IT support.
Location: Piața Presei Libere 3-5, Bucharest
Booth#: 2
We are waiting to meet you in person in Bucharest and discuss the latest IT topics and possible ways of successful collaboration!
Just like in 2022, Quantox continues to support one of the oldest sports and recreational events that promotes healthy life and good habits for 46 years - the Fruška Gora Trail!
The oldest mountain and ultra-running marathon in Europe this year will be held on 22nd and 23rd of April.
Quality time in nature and nurturing health habits!
Through 14 tracks of different lengths and height differences, the Fruška Gora Trail offers the chance to to experience all the beauty of the Fruška Gora National Park, as a recreationalist or as a experienced professional trail runner.
https://www.fruskogorski-maraton.com/en/marathon-trails/
The official opening of the event is scheduled from 08:45 to 08:55 on the 22nd of April, and at 9:00 - the 46th Fruška Gora Trail will officially begin!
Sunday, April 23 from 11 am, is reserved for the youngest! Only children of preschool age accompanied by parents or other authorized adults can participate in the Path of Joy and Pleasure.
During a hiking tour or competitive race, all participants can feel the natural beauty of Fruška Gora - forests, streams, waterfalls, fresh air - but also, this is an opportunity to get to know the cultural and historical heritage. Along the marathon paths, you can see numerous Serbian medieval monasteries - Grgeteg (XV c.), Staro Hopovo (XVI c.), Novo Hopovo (XIV c.), Jazak (XVI c.), Bešenovo (VIII c.) Fruška Gora hamlets and tourist facilities.
Do not miss the unique opportunity to spend this weekend actively in nature!
After running kilometers and successfully completing the race - we are waiting for you to take a break in the Quantox Chill Out zone!
See you on the Fruška Gora!
QUANTOX IT League is the first sports competition of this type in Serbia!
A motivation to enable people in this industry to play sports and connect - resulted in a project which is unique and new in our country.
So far, 5 seasons of the Quantox IT League and 4 seasons of the Summer League have been played in over 800 matches and with a common goal - good fun, quality games, and an opportunity to meet and connect with colleagues from the industry.
With Luka Bulatović, the director of the IT League, we discussed the idea of gathering IT companies in one place through a sport and the advantages this kind of competition provides and promotes.
Six years ago, we gathered at the basketball court where we played basketball once a week. Back then we were teammates on the court, and today, we are the organizers of the Quantox IT League. We moved from the court to the offices and thought about how to connect with other IT professionals and set a new standard that the IT world deserves.
We are aware of the fact that it is very difficult to find free time for physical activity, but when you have a team that motivates you - then basketball training and games become an immense pleasure.
To this day, the same idea remains and we are proud of the entire organizational team as well as all the companies that have trusted us and have been participating for years.
The idea for this project arose as a desire to present the entire competition in a different light. Our mission is to create an inspiring, creative, and positive environment that encourages unhindered freedom of expression through sports. The club's vision is for people from the IT sector to play sports and meet new colleagues from the profession and also raise their work to an even higher level through the Quantox IT League.
For now, the League gathers only basketball players, but we plan to expand this project to other popular sports. The biggest challenge is to attract more companies that will be part of the league, and we plan to do that with constant improvement of conditions and through introducing novelties.
We are proud of the numbers that show us that we worked hard all these years to reach the 6th season and 32 teams. During this competition, some of the teams improved their game thanks to the good organization within the team and a large number of training sessions.
The reasons for participating in the Quantox IT League differ, from recreation, socializing with colleagues, and strengthening team spirit. Furthermore, one of the main competitive motives is raising the trophy at the end of the competition. And yet, above all these, the most interesting part for the participants is the "third half", when they stay after the game and hang out.
The Quantox IT League offers companies the opportunity for their people to spend quality time participating in a sport & recreational competition with their team. This way, they improve both their physical and mental health. This is one of the ways for colleagues to get closer to each other, get to know each other better, and spend quality time outside the office together, in a different environment. Further benefits are that, over time, members begin to understand each other better, develop better relationships and have more open communication.
Winning and losing are integral parts of every game. Every team has ups and downs. What drives them are the good results they achieve in matches. Another major motivator is the fans who are there to encourage and cheer for their favorites in the stands!
We believe that the conditions in our league are at the highest level in the country, but we can do even better. The real challenge is to overcome yourself, to do something new. Challenges are what actually drives us!
The IT League has recently gathered 32 basketball teams and organized an humanitarian All-Star event for the treatment of four-year-old Helena Živković from Čačak, who suffers from autism. Hardware and Software teams competed to help little Helena, and collected 126,900 dinars from ticket sales. This is just one of the many ways in which this kind of sports competition contributes to individuals and communities when needed.
The fifth season of the Summer IT League is beginning soon, and registrations start on the 17th of April.
See you there as we continue to strengthen the IT community through team spirit together!
Today we introduce you to Aleksandar Džavrić, our colleague from Kragujevac. Some of you may have already “met” him during Quantox Virtual Conf. He was the one who opened our conference with his lecture on the development path of programmers and very useful tips. You can watch the lecture here, and get to know Dzavra a little better below.
Last week we organized the Quantox Virtual Conf; pandemic born, first of its name, breaker of quarantines, freer of knowledge sharers....and we’re happy to say - it exceeded our expectations!
A desire to share the knowledge inspired us to organize even more similar events that could possibly become a tradition in the upcoming period.
"Although we organized everything in a short period of time, we are very pleased with the final outcome. We can't wait to share some of the speakers' impressions, who themselves also enjoyed overcoming new challenges.We’re looking forward to having new opportunities to socialize and exchange knowledge and experience."
If you were not able to follow the conference live, we will soon share the presentations as videos. Follow our Youtube channel and don't miss the opportunity to learn something new.
Meet Sascha Mitscherlich, our colleague from Frankfurt. He will help us in the mission to establish our brand on the European market. With only 36 years of age and vast experience in marketing and sales, he is a perfect choice for our brand new Sales Manager in Germany. Sascha likes sport, nature, and he is very creative and has big plans for Quantox.
"Before I accept a new job-offer I make proper research to get all information about the company history and its reputation. On each platform, I checked the ratings and opinions about Quantox and I was stunned about the number of recommendations of happy customers, users, and employees, which is not self-evident especially in the IT-industry.After a couple of very nice and interesting chats with Filip and Vuk, it was not a question anymore to join Quantox, only when!"
"Besides a very good reputation, I would choose the projects Quantox already successfully finished and its impressive customer base. This will definitely help to gain a foothold in Germany.I also like social media appearance. It is a good mix of business and work-life content. I can’t wait to see more of it. Many companies ignore that."
"The long-term target is to be a market leader for web development in Germany, no question. For this and next year, I focus on our awareness and pipeline building in Germany. That means we will have a strong focus on marketing activities and to find partners which can leverage our sales force. The target is to become the challenger in the German market and to have the first regional partners until the end of the year. We definitely have what it takes to play on the top."
"One important process already started: the knowledge transfer.That’s a point where all my new colleagues can help me with. You think it is interesting for me or it can help me or my prospects? Share it with me, please!Another point is to get in touch with the different departments to get a better understanding of the responsibilities and the internal processes are essential. I expect support and excellent cooperation with everyone, especially with the Marketing team."
"We have established a legal entity in Germany including a well-located office in the Frankfurt Area with modern infrastructure to have a place to meet customers and prospects. An organically growing team of German-speaking professionals for various positions will be needed for that tough but very exciting challenge.I would like to work with clean CRM and structured processes because I live by the motto: ”What’s not written in the CRM, never happened.”And of course, I would like to get introduced to our existing customers in Germany and our internal project owners."
"We have a lot of innovative and global companies in Germany. Everyone is trying to remain competitive, especially in the age of digitalization, where start-ups are springing up like mushrooms and both, start-ups and global companies, are desperately trying to get the few available professionals on the market. The “Fachkräftemangel” (in German) is a problem for all companies looking for IT professionals. The German Government and the German industry are trying for years to attract more IT professionals and experts from other countries but even with those measures, the demand isn’t served at all.Currently, there are no real big names or market leaders when it comes to web development companies in Germany. But we can already see companies intensifying their activities in Germany to get a part of the big cake and of course, now, one of them is Quantox."
"The key to success in Germany is awareness, credibility, and trust. To become a well-known company for web development in Germany, we need to invest in marketing, selective ads, establishing a recommendation- and partner network, intensifying the social media content and activities in German, and much more. We will focus on all business sizes, from start-ups up to global enterprises therefore our German headquarter will be near the global business hub of Frankfurt/Main. The location will have a positive influence on many points. Be it the accessibility, the good infrastructure, a larger range of potential employees due to the size and popularity of Frankfurt, many trade fairs, or the short distance to future major customers. Once we have a reputation in Germany and we fulfill the requirements, Quantox Germany will participate in public tenders which would further accelerate our growth and awareness in the German market."
"From what I saw, the business culture is already great at Quantox and I’m sure the Quantox team shares the same values as I do. Be honest and transparent everything else will definitely hurt the reputation of the company, always treat customers and colleagues with respect, be punctual/keep deadlines and keep your promises, work more focused and cleaner than quick and dirty, structure your day as good as you can but stay agile and don’t forget the fun besides all the work." 😊
"It is a combination of our good reputation, our long history of successfully finished projects of all sizes and focal points, our references, the skills of our highly qualified employees (many of whom have been with us for a very long time), the team spirit, the very well experienced management team and of course our competitive offering."
We present to you Djordje Sosic. Djole is our colleague from Cacak and he has been part of the team for more than four years. He deals with web design and today we will get to know him a little better through seven short questions. So, let's begin:
"I would like to learn "all" programming languages. Imagine what the salaries are when you are a full-stack programmer." (laughs)
"It has to be as interesting and as complicated as possible, to be a challenge for me."
"I think the biggest challenges are to understand what the clients really want, what is behind their demands in order to reach a solution that will satisfy the client as soon as possible."
"Actually, yeah, when I saw other members of the design team. I realized that dealing with design can destroy you both mentally and physically." (laughs) "I’m just kidding, of course, I didn’t regret it. The job of a designer is creative and dynamic so I recommend it to everyone."
"I recently read the book "Animal Farm" written by George Orwell, and the documentary I would recommend is "The Last Dance" about Michael Jordan."
"Photoshop."
"From home. I got used to it, although I miss the crowd and colleagues more and more. I hope that soon all this about the virus will pass and that we will get back together."
Although physically separated, we found a way to show love to our employees. We celebrated Labor Day together! 💚
For the weekend of April 4 and 5, a Humanitarian Counter-Strike tournament was organized for all domestic IT companies in Serbia, which aimed to raise funds for organizations and institutions that help the most vulnerable groups of people affected by the Covid-19 virus pandemic.
In addition to raising funds for organizations that help health workers and other most vulnerable groups of people in our society, the goal of the competition was to maintain contact with colleagues from our company, contact and community between all domestic companies, an exercise in quarantine as well as focus and fun at a time that is stressful for many of us.
70 teams from domestic IT companies participated in the tournament, and the initial fund of 1,000,000 dinars increased daily and 3,242,000 dinars were collected.
After the successful realization of the tournament, it was decided that the funds will be directed as follows:
50% of the budget - 1,621,000.00 dinars to the Clinical Center in Nis
30% of the budget - 972,600.00 dinars to the Republic Health Insurance Fund for assistance to medical staff
20% of the budget - 648,400.00 dinars to UNICEF for the purchase of equipment
You can find more about the tournament on the official website: https://hitturnir.com/
Due to the great interest and positive impressions of the actors in this event, the epilogue of this humane story is that the IT league was formed in cooperation with other organizations.
The greatest satisfaction of us, as a company that was in the role of organizers, is that all participants as well as companies from the community enjoyed and came out of the event with extremely positive impressions.
We are transmitting some of them to you
"Great fun. And of course, very happy to win the tournament :) We would participate again" winning team
"First of all, a very positive surprise since the whole IT community organized very quickly and the number of registered companies was much larger than I expected. It is difficult to describe in words the moment where due to the given circumstances and difficulties in economic and social terms there is such a large number of people, organized in a short period of time around the humanitarian action. In addition, I accepted this activity as an online team building where we had a lot of fun and laughter :). Also, in addition to games and fun, we had the opportunity to discuss various topics with colleagues and share experiences and opinions, which is, of course, another positive result "
"Really nice and pleasant experience. An interesting goal of the tournament was set, so everything got an interesting note :-D"
"Great! The team had fun, hung out, reminded of the times when Counter was played much more actively ... :)"
JavaScript is one of the most popular programming languages available. It is a lightweight, interpreted, or just-in-time compiled programming language with first-class functions (your functions can be arguments and returned values as much as any variable, or any literal). While it is mostly known as the scripting language for web pages, many non-browser environments also use it, such as Node.js, Apache CouchDB and Adobe Acrobat. It is dynamic and event-driven - uses an event-loop in a single thread, which reduces concurrent programming complexity a lot. It is also prototype-oriented (rather than class-oriented like Java or C++)JavaScript is a prototype-based, multi-paradigm, dynamic language, supporting object-oriented, imperative, and declarative (e.g. functional programming) styles. It represents the de-facto programming language for client code running in the browser.The biggest thing to me about JavaScript is how light it is to write code. It is easy to learn and easy to use, except when it’s not. There are many “gotchas” that can trip you up. Sadly, this design is what gives JavaScript a lot of bad parts or how I like to call them "the dark side".Let’s cover them.
Sadly, and probably the worst choice ever made about JS, is that it’s weakly typed. Variables are untyped, only values are, and what types are they? It’s either Object, Symbol, String, Number, Boolean, Null (yeah), and Undefined (yeah, undefined is a type of his own). What’s even kind of ridiculous is that when you test that your variable is an object, you have to do this :if (typeof myObject === "object" && myObject !== null)Because your object can be of type Object, and still be null you know.It is easy to write code with a dynamically typed language, but it is also easy to create errors. That’s where people started using TypeScript and Flow.
Numbers in JavaScript are double-precision floating points. Which means you have no integer type. What’s the problem with it? At a high level, it's because JavaScript used the IEEE Standard for Binary Floating-Point Arithmetic0.1 + 0.2 = 0.30000000000000004
The most painful topic about JS is coercion. This is what all should be aware of.Recall that JS has native types (Number, String… etc) and that variables are not typed, values are. When you do:typeof myVar === "number"You are actually looking to know if the type of the value myVar is pointing to is a number. It’s important to understand that.Now, what happens when you want to do an operation with two variables, whose values are different types?let a = 10;let b = "10";let c = a + b; // ???A decimal 10 is represented differently than a string 10. For example, the number 10 could be represented in 8 bits as 00001010. The string 10, is encoded using two ASCII characters *: 00110000 (48) and 00110001 (49).To do a proper calculation, the JavaScript Engine must ensure both operands are of the same type. And JS tries to do the best for you, so in this case, it will assume you just want to concatenate a decimal 10 to a string 10, and returns a string value of “1010”.You have to be very careful. And you know where this might hurt you the most? Here are some coercion examples:[] + [] → "" // Empty string? These are arrays![] + {} → [object object]{} + [] → 0 // Why isn't the operation commutative???{} + {} → NaN // ???16 == [16] → true // Array converted into string, then into number16 == [1,6] → false // But what is array converted into?"1,6" == [1,6] → true
Callbacks are just the name of a convention for using JavaScript functions. There isn't a special thing called a 'callback' in the JavaScript language, it's just a convention. Instead of immediately returning some result like most functions, functions that use callbacks take some time to produce a result. The word 'asynchronous', aka 'async', just means 'takes some time' or 'happens in the future, not right now'. Usually, callbacks are only used when doing I/O, e.g. downloading things, reading files, talking to databases, etc.Nesting callbacks (function calls) will create an issue for you without knowing what function and when will be executed (callback-hell)Solution for this is using promises, generators, async-await.
Why are global variables wrong?That’s some space allocated you’ll never get back until you nullify them explicitly by callingwindow.x = nullIt induces sides effects in your functions that are going to use that, which makes the code way more complex to understandOther people could as well have used this variable for a library or something (which isn’t rare for browser UI libs). Worst than that, one could inject malicious code in that global that would make your code crash or worst, leak pieces of information.It’s hard to test global variables because they are global, and their usage is hard to determine.There’s tons of way to get away without using global variables (such as closures and IIFE). Always use let and const when you declare a variable, and if you’re not confident, use strict.
Developer should be aware of using scopes. Especially when "this" comes in question. Every function, every object create their own scope, and some variables or other functions might not be available at some parts of the code. Therefore you need to be careful about inner and outer scope of some object/functionTalking about this keyword, developers often make mistakes using this in arrow functions.const foo = () => {let a = 10;console.log(this)}foo() -> // this will refer to global (outer scope).The reason why is this happening is that arrow functions do not have this.
There are a lot of bugs covered in new ES versions of the language. But to have support for older libraries and scripts, browsers support older versions, and therefore all older sites could "live".The advice and solution for this is using the newest versions like ES6+ with 'use strict' directive on top of your code or top of function body that you write.When it is located at the top of a script, the whole script works the “modern” way. The "use strict" directive switches the engine to the “modern” mode, changing the behavior of some built-in features. Several language features, like “classes” and “modules”, enable strict mode automatically. Strict mode is supported by all modern browsers. Without "use strict", everything still works, but some features behave in the old-fashion, “compatible” way. We’d generally prefer modern behavior.I love JavaScript and use it daily. But that doesn't mean that there aren't some really awful errors in the language. I think I didn’t even closely cover every bad thing in JS and how to avoid them, but I want this list to be updated as much as possible, so please don’t hesitate to give some feedback, and subjects that I should cover.
JavaScript is far from perfect, but Quantox JavaScript developers love what they do and they know how to avoid the snares and traps of this programming language. Thanks to the years of experience and vast knowledge, they've mastered the art of JavaScript development and are ready to build perfect apps despite the imperfections. Partner up with Quantox to build your dream app using JavaScript. Let's Talk!
In the introduction of this text, I would like to convey my experience, offer a few tips for technologies and how to use them, write a short guide through the languages that I myself have passed and how, by learning, I became a Front-end developer.
The first thing you should ask yourself and be real with the answer - "Why do I want to become a programmer?"
The "Why" question is an important part because it deals with specific motivation. Working in a programming company, cool things, salary, the possibility of attaining new knowledge, hanging out with colleagues and remote work are some good sides of working in a developer environment.
Why is it most important to deal with this issue? Precisely because programming and work in IT companies besides cool things, good earnings, frequent organizations of meetups, socializing, excursions, remote work, there is another side - which is great responsibility, dedication, renunciation for the advancement and learning of new technologies , all in order to track new trends in a time where technology has taken great power and is rapidly advancing.
The basic and first precondition for fast and easy mastering of technologies is the knowledge of English. All tutorials, all books are in English. Every communication is done on the same, and every problem or solution you are searching is also in English.
Important things to keep in mind when entering the world of computers, programming, or some other IT job:
Everything has to start from the basics and that should apply to every programming language. For example, if you are far off with your knowledge in Java, you would have to start from the basics if you had to learn C#.
Do not compare yourself with other developers, not everyone progresses at the same tempo, it is important to be persistent because persistence is everything, however hard it may be. You should be able to get out of the comfort zone because programming demands it, every problem is solvable, but each problem is unique and needs to be approached in a unique way.
Also, competing with others can have a negative effect on you, because you will see that you will not be moving fast enough in order to reach someone. This is not a solution. I am saying this from my own experience, right from the start you need to dive into research about programming and languages as such, you need to decide in which direction you want to improve, learn and ultimately what to do.
Programming is a very broad concept that comes through a lot of spheres over the web, programs or games to robotics, science, and so on. You need to learn how to allocate time both in learning and working on projects, it's important to get work habits as well as the habit of coding.
Set small goals for the beginning, not because you care about your progress, but because you care for that progress. Make a list of things you want to end on that day, at least if it's just one page of reading or watching a video tutorial or writing 20 lines of code.
Make a git account and commit a significant change every day, so you'll keep up with your progress.
So, we have basic divisions (directions), such as Operating Systems, Applications for Phones, Web Applications and the Web Generally, VR, AR, MR, Game Development, Robotics, Networks, System Administrators, DevOps, IoT.
Java, C, C#, C++, Objective-C, Swift, JavaScript, PHP, Python, Ruby
As we have said, it is best to decide for one direction and to stick with it. Nobody says it will be easy and fast. You should skip tutorials and books that offer to learn in 21 days, 10 days and so on. It is best to choose one language to stick to the basics, rules, understand the structure of the data, the variable, the command, the syntax of the language itself and, of course, after the theory comes to practice, practice, practice.
After that comes the higher level, which is work on the project. My first project was a personal portfolio site. In short, I will walk you through some programming languages and what they are used for.
It is mostly used for applications on phones, android. We also have a great application in IoT.
Java is a very portable, cross-platform, (JVM) Java virtual machine. Otherwise, it is a statically-typed language, which means that the code is checked before the application is built. It is designed to be similar to C++. Java is an (OOP) object-oriented programming language.
Its most famous framework is Spring.
A lot of popular tools have been written in Java, most notably: Eclipse, Hadoop, Android, Android App ...
* Statically typed languages are faster than dynamically typed languages.
Very versatile language, applicable almost everywhere, powerful and easy to learn. It is recommended for beginners because it develops a good programming logic. Its power and diversity is seen in the fact that it can be good for web applications (backend framework Django) and is also good for data analysis, AI, scientific analysis. Most developers use python to create some tool or mini-game for raspberry pi or Arduino.
Python is a dynamically typed language, however, it is quite fast.
Things that are written in python:
Atom, Eclipse, Sublime Text, PyCharm, Blender, BitTorrent, part of Ubuntu, Civilization VI uses python for most tasks, Overwatch.
A programming language specifically designed for the web. Its focus is on the back-end, programming web applications on the server side.
A very popular and sought-after language because, as with JS, a large part of the web works on PHP.
PHP is dynamically typed.
The most famous web application written in PHP is only Facebook.
Similar to each other, all come from the C language. Except C#, which is Microsoft's product, C and C++ are very difficult to learn. If you go into the adventure with these languages, keep in mind that you will not only learn the language as such but also how the computer actually works, what is happening on low-level programming processes, because C is the closest to machine language.
JS allows us to build interactive websites. As the main programming language used on the web at the front of the web, it is popular with a number of frameworks and libraries, such as ReactJS, VueJS, Angular, Ember, jQuery. Application in JS or its frameworks can be found in the back-end, nodeJS, and also with Electron, you can make a cross-platform desktop application.
As a dynamically typed language, JS is slow in creating desktop applications but it is used and is getting better at it.
JS, as well as PHP, are responsible for the entire web, so it makes no sense to list what is written in JS.
If you want to be exclusively engaged in the development of native iOS and MacOS applications, then Swift is just for you.
Swift is a statically typed language, xCode (its IDE) will check everything before the application goes out.
The language is very young, but also very popular, has the tendency to replace Objective-C, which also serves for writing anything that is under the Apple brand.
For the purpose of enumeration in Swift, Firefox is written for iOS, Flappy bird, HN Reader.
Ruby's popularity is the first in its syntax, which is almost like writing something in English. Ruby on Rails is a framework that is, in fact, a full stack web framework. Designed to make programming easier and more fun, it has been used in web development, as well as in making games.
Ruby is a dynamically typed language.
After all this, I hope that you have a little clearer picture of the way the programming works. So if you decide to learn to programme, regardless of the language you decide to use, it's important to investigate it thoroughly. Learning programming is best through college or some licensed course, but it is important to learn by yourself throughout the entire school. Good books, internet, and good tutorials are all you need.
If you are a gamer, make tic-tac-toe, sudoku or flappy bird. It does not have to look the same for the same logic of the application itself.
If you want to better understand front-end development, make your own website.
If you want to create a full product web application, start by making an online bookstore, blog, using google maps API for your personal web navigation.
Several sites for beginners, basics.
https://www.w3schools.com W3Schools
https://www.codecademy.com CodeCademy
https://www.udemy.com Udemy
http://webnstudy.com/ WebnStudy
https://www.webprogramiranje.org WebProgramiranje
https://enki.com/enkiapp EnkiApp
http://www.bestprogramminglanguagefor.me BestProgrammingLanguageForMe
For over 12 years, Quantox has been known as a leading IT company in the region that's also dedicated to its team and with a clear goal of encouraging and helping one another toward career growth and mutual success. Every one of us was once a 'beginner', but through support and guidance, we were able to create an environment that is familiar, welcoming, and motivating. Today, our people are known as the experts in the industry, using the best technology as they combine tech, creativity, and data analytics to create what we believe in the most- creating innovations and getting advanced results. Is our team the perfect one for your projects? Let's Talk!
This is a small step for developers, but the big one for Quantox.Congratulations to all members of the team on the achieved success in the previous period. Work always pays off and brings good results. This time, your hard work brought the well-deserved promotion to you!
Milos Aksentijevic Front-end developer @ Quantox
JavaScript framework is popular among developers for such benefits like efficiency, safety, and cost. The variety of frameworks for each development platform is huge. It’s impossible to describe all of them and there is no need for it. Let’s narrow down our choice. As almost every company tends to have a website or at least a landing page, it would be good to review the most popular JavaScript frameworks.
For front-end developers, it’s increasingly challenging to make up their minds about which JavaScript application framework to choose, especially when they need to build a single-page application.
To simplify this choice of a JS framework for client-side development, we should reduce our options to several top solutions. For client-side development, our list of JavaScript frameworks includes React, Angular (Angular 2 or higher) and Vue.
Not every JavaScript-based “framework” we’ve just mentioned is an actual framework. But we can throw in several libraries to the pack and make those not-quite-frameworks feel like actual ones. We’re talking about React and Vue.js, which are both JS libraries for the view layer; and Backbone, which also only partially implements the Model-View-Controller (MVC) architecture. For the purposes of this overview, however, we’ll use the term “framework” loosely to refer to all five of these JavaScript solutions.
An up-to-date JavaScript framework must comply with several requirements.
The biggest strength of Angular 2+ is its popularity. It could be argued that having the name Google associated with it has an impact on organizations considering it. There is a strong market for developers. It is also one of the few frameworks compared in this series that has an official set of rich components for building user interfaces.
We feel the Angular framework focuses on creating user interfaces in a single page application and does not address the larger concerns of a building a web application. This can lead to difficulties while maintaining projects if conventions are not established early. At a practical level, there is a lot of magic that occurs to provide run-time behavior that is not part of the core framework-provided technologies. This diminishes the value of TypeScript to the end-developer.
If you need to source skills in a framework at scale, where the skills are generally easily portable, or you need to train teams on a framework and have a level of confidence they will be productive in short order, you might consider Angular 2+. If your web applications translate well into a model view pattern, then you might also consider Angular 2+. If you are happy with the Google Material UX pattern, then Material for Angular is a quick, easy, and robust way to follow that pattern.
The biggest strengths of React and Redux are their relative simplicity and focus. Taking the mantra of doing one thing and do it well it is hard to find fault that both libraries achieve very effectively what they set out to do.
The biggest weakness of both React and Redux are not what they are, but what they are not. To build a feature-rich web application, you need many other features and once you get away from the core of React, Redux and a couple of other libraries, you will find a hugely fragmented community, with countless solutions and patterns which may or may not be easy to integrate together.
If you are in a situation where you need less hand-holding and are looking more for good libraries than a comprehensive framework, then React + Redux might be right. You do need to be honest about the abilities of your team and organization, not only during your initial development but throughout long-term application maintenance.
The ability to incrementally adopt Vue.js is likely the biggest strength. Vue has a concise and rational architecture which makes it straightforward to understand and easy to build upon.
The desire to pivot between model view application and state container type applications can be confusing. It feels like there is a desire to remain relevant without fully embracing one application pattern over another. It feels to us that, at a minimum, it is confusing to those looking to Vue.js for a complete solution and could lead to inconsistent application patterns that are difficult to maintain.
If you have a legacy web application that needs a more robust and contained application layer, then Vue.js might be a good fit for you to adopt. It has clear patterns and even with inexperienced teams, there is a right way and a wrong way. While there are not any out of the box Vue UX frameworks, there are extensive sets of coherent frameworks built on Vue.js that might work for your project.
A framework is nothing more than an embodiment of some patterns, integration of some technologies, and source code to help make our web applications easier to build and maintain. Challenge yourself or your team to take a holistic look at a framework, but first, start with a list of what is important to you and your organization, especially those things that transcend technical features.
Although we’ve mentioned only three web frameworks, professional developers should have an open mind as there’s no best JavaScript framework. There are many other examples of JavaScript frameworks and they are enough for building client-side apps.
Whether it's Angular or React, or even Vue.js, Quantox ensures our clients have the best pick when it comes to JavaScript developers working on their projects. Our front-end developers are always learning, forever evolving and innovating new ways to create and better software development in order to expedite your business journey to success. Do you need a JavaScript framework developer? Let's Talk!
What is a front-end development? What does an FE developer do? What was the road of front-end development from its beginnings? Well, those are just a couple of questions for which you can find answers here.
Front-end development first appeared alongside appearance of HTML and CSS. So it’s fair to say that the first front-end developers actually appeared in the early 1990s. It was not that popular at the moment, but with the expansion of the internet, HTML, and CSS it started to grow up as a really important part of web programming. At its beginnings, front-end developer didn’t do much. Their job was to just create a static website and make it look good. At the time until early 2000s front-end developer was called a web designer. A real breakthrough and the bright future for Front end developer started on 22nd of December in 1995. On that day, JavaScript as scripting language appeared for the first time. And then it was clear that front-end developer, oh sorry, the web designer is going to do much more than just making websites look good. After JS appearance new era for front-end development started.
Since I am mentioning that term front-end development all the time, why shouldn’t I explain it a bit before we continue on with FE developer road? Front-end development is part of web development which code is executed on the client side. That actually means that code written by FE developer is served like that into a browser of the visitor of that web location and executed there. Throughout the time, that actually changed a bit, but I will speak about it when we reach that place on the front end developer road.
From moment JavaScript first appeared it wasn’t long after when the potential of it got on the surface of the web. Many people used JavaScript the way they wanted so it was very important at that time to actually create some ground rules and form standards and guidelines for use and its development. So, in 1997, ECMAScript first appeared as a standard for JavaScript. That was the beginning of a new Era for FE developers, still web designers at the time. ECMA did a lot concerning JavaScript evolving, but the road they had was very bumpy. Especially with version 4 which was supposed to be very innovative at the time. It got abandoned due to some political reasons about the complexity of update in 2008. Some people even had an opinion that it could break the internet, so it was abandoned. In December of 2009 ECMA released version 5, and on that version, JavaScript became what we know today.I took a bit of detour from FE road, just because of the importance of JavaScript and ECMAScript, but I back on road again.In early 2000s JavaScript already was very popular, but still didn’t become an important part of FE developers. In 2006 one thing appeared that changed everything in FE developer (still web designer at the time). It was an appearance of jQuery, as cross-platform JavaScript library.That was the year in which web designer found a crossroad.They got 2 roads ahead: one was to stay a designer and just design websites, and the other one was to become a programmer – WEB programmer – Front End Developer. And that is how web designers got divided and that’s how we became FE developers that we are today.
Now, we who took a programmer road, well, we still had very bumpy road ahead of us. With jQuery, we had a lot of new possibilities to add to websites. Websites were no longer static. We have a dynamic part of a website. Sort of speak, we brought websites to life.So FE developers were then programmers, using JavaScript, HTML, and CSS, building much more than just web page, but still it wasn’t enough. We wanted to do more. ECMAScript continued to grow, new versions were released, but what made us today an important part of WEB development process, wasn’t just ECMAScript.
Beside ECMAScript and jQuery, frameworks made a boom in FE development.The year was 2010, and that year made the great impact of FE developers. The first frameworks that we use today appeared. For example, it was Angular and Backbone. But why they made such an impact? Well, a difference between libraries and frameworks lies in how its implemented. When you use a library, you just call predefined functions from it and that’s it. What frameworks give you is much bigger. It gives you a set of rules, guidelines, frames in which you can create apps and websites with a lot of more possibilities. It allows you to design entire apps, combine it with libraries, manipulate DOM and much, much more. So today we have a lot of frameworks around us, and we can choose which we want to develop our apps. There is a lot of them and the most popular ones are Angular, Vue and React.
In the new era, the late 2000s also made a breakthrough for FE developers when CSS is in question. As CSS is well, a bit uptight when developing is in question. Something had to happen in order developers get a chance to do more with less code. That Idea was the most important link in the chain that gave us CSS preprocessors. They give us an opportunity to do many things, have functions in CSS, have variables, entire parts of code used on multiple places, divide code into smaller pieces. And what’s the best in it: when you are done it gets compiled in plain CSS, and works like a charm. So today, preprocessors are used all the time. We also have a variety to choose from. We have the stylus, LESS, SASS and much more, but those 3 are the most used.One more thing was worth mentioning in this era: HTML expansion. Throughout years HTML evolved a lot too. Today, we have HTML5 which way more powerful than before.
Today, FE developers do a lot, not just make the website look good. FE developer today creates the structure of websites and apps. Makes the site have its life: creates all possible interactions of users with apps. He manipulates the DOM on the much higher level, a not just that. Creates virtual DOM and manipulates the content displayed. Communicates with a server to pick up data, but if needed, formats the data as needed or even creates data independently from Server.All that makes FE developer a very important link in the web development process.The new crossroad, what did I mean with that? JavaScript became so powerful that today, FE developer took one step from client side to server side. Today with JavaScript we have a possibility to create apps executed on the server, so are we going to stay Front End developers or we are stepping into Back-end part? JavaScript gave us that but also gave us Node.js. With JavaScript, we can now create REST structure…That is our next crossroad, where will FE developer go, only time will tell. Let's see what years to come to have to offer.FRONT END Developers, let's buckle up and enjoy the ride we are on!
Quantox has been blessed to have some of the best front-end developers under its roof. Our FE developers are not only developers- they are mentors and lecturers, but also innovators as they look for a new way front-end technology can better websites and application development. Thanks to them, our clients can tap into the endless well of knowledge that leads to exceptional results and powerful website and app solutions. Do you need help designing and building your new website or app? Let's Talk!
Quantox Technology is a fairly young company, especially in this composition, but on this occasion, we would like to thank one of our first employees for dedicated and valuable work. Our colleague Miljan is with us for 10 years, and you will admit it is not a small thing at all. This way, we want to get to know you better with the guy who was there when it was difficult and when everything went smoothly. Read the entire interview below and get ready for some hilarious answers, because he is just like that - Funny as it gets!
Miljan: Like every other start - hard and hard. Moving from one job to another and learning basic IT related matters at the moment you are 19 is not a small thing. It was hard for me, but I managed with the right people and their full support.
Miljan: Hardworking, fair...
Miljan: I'd say this jubilee, a decade spent in Quantox!
Miljan: Ooooh... There were plenty of them. Criticism, but also praise.
Miljan: Honest work, persistence, desire to prove. Perfecting my skills was a crucial part of it also.
Miljan: Trust! Definitely both!
Miljan: Loyalty!
Miljan: Hmm... what? The whole team, the friends who have supported me in the difficult and good situation... They always dragged me to the top and because of that I am extremely grateful. And my wife, of course.
Miljan: I would like to continue to improve on a personal plan, and to "grow" together with the company. And to the other part of the question, I will answer with one word: Here!
Miljan: A very witty person I guess.
Miljan: We have progressed, we have expanded. I remember the days when only four of us started and today the company has more than 200 employees. It is ideal because it provides almost everything that other companies can not. You can learn and progress in various IT industries. Good salaries which are always on your account in time, which is rare in Serbia. A lot of traveling and hanging out with people from the company... I could continue like this for a long time, but you get the point.
Miljan: Hm, let say culinary.
Miljan: Kitchen, agriculture, reading books. Also, I spend a lot of time with my wife in recent months, we are waiting for a baby.
Miljan: No!
Miljan: Yes, of course, there were plenty of pleasant situations, but it's hard to tell. There are many beautiful moments, and from all the pleasant and beautiful situations that I have experienced for the past ten years, I would like to single out the moment when I was voted by the collective for the most humorous colleague.
Miljan: The first cancellation from the client. I was young, I fell hard, there were thousands of questions at that moment, what further, how, where ... But the company and people in it are always ready to help you find a solution!
Miljan: As I mentioned above, I have experienced a lot of interesting and funny situations here, and it's just impossible to single out one. If you asked me what is the most ridiculous situation today, maybe I could make a decision... For example, this morning Sale and I were having a breakfast, and we were eating the burek and yogurt, however, before he started eating, he opened up yogurt. Then, we started chatting about something, he forgot that he had opened it and he started to wave with that glass, thinking that it was not open ... Can you imagine how the office looked after this performance?
Miljan: What the footballers would say, Dostoyevsky, The Alchemist. There are plenty of books and movies too. Maybe from Stephen King's Green Mile, Shining. The movie also Fluttering, Fight Club...
Miljan: Aladdin. I have a carpet that flies, I go wherever I want, I have a ghost from a lamp who fulfills all my wishes and what more can I ask for?! To fight with some scumbags is not my style.
In its long and rich history, Gymnasium in Cuprija has seen a large number of pupils. Some of them have become National Heroes, professors, doctors, and some have even earned the membership in the French Science Academy. But, no matter where they are and what they do, pupils from this famous gymnasium never forget their school and professors. Also, there are some of them who, with the great joy and a lot of proud, in the education field in their curriculum vitae put Gymnasium Cuprija! These people have decided to somehow pay the debt they feel they own to the school which has shaped them in the people they are today!That's the case with the Popovic Brothers - Vuk and Milan. Once pupils of Cuprija's gymnasium, these two young people are building their IT careers both in their home country and abroad. They are the owners of the Quantox Technology company which has been successfully dealing with the creation of websites and applications, for both the European and World market. Even though they have finished their education and left Cuprija's Gymnasium behind long ago, Milan and Vuk gladly come back to visit their hometown and the school which has, as they both say, had a huge influence on the development of their both personal and professional life.
In order to pay their "debt" they feel they owe to the school (at least one part of it), but also to motivate current pupils to work hard and diligently, these two, for the fourth year in a row are providing scholarships for the most successful pupils.Three of the best pupils at the end of each school year are getting 50.000, 30.000, and 20.000 dinars from the Quantox Technology company. Besides this, the company has donated over 30 computers for the Informatics cabinet of Gymnasium.
"This is just a small sign of gratitude for the school we attended and for which the most beautiful memories bind us. At the same time, we want to encourage young people to devote themselves to the education, because education with their constant work and monitoring of the demands of the market will bring them desired success" says the founder of Quantox, Vuk Popovic.
Quantox Technology now employs more than 180 programming experts in the offices in Cacak, Belgrade, Kragujevac, and Nis when speaking of their homeland, Serbia, and one office in Santa Monica, LA.
"By developing and improving the company, we have learned to listen and follow the need for the advancement of the communities in which we operate, because only together can we achieve goals that will be fruitful for the whole society. This is also the reason why we actively participate in the lives of these communities and support their development" they say from Quantox.
Whether you are a Linux user or a MacOS, or even Windows, a programmer or even SysAdmin / DevOps, Terminal is an inevitable and very powerful thing in the OS. This will be a brief description of the Terminal and its basic commands.
Basically, the bash shell is used by default. A shell is a program that uses commands assigned to it by the user (commands are defined, while new ones can be created) and forwards them to the OS that will show some output when executing the command. In addition to the bash shell (Bourne-Again shell), there is also sh and csh.
There are many standard Linux commands that are already installed along with the OS, which allow you to navigate through the system, install software packages, configure the system and applications, search the whole system or project, work with the git and more.
An instant when running a command is called the process.
It is very important to know that almost everything in Linux is case-sensitive, including file names and directories, commands, arguments, and other options.
An excellent addition to the terminal is zsh (oh my zsh), this is an open-source framework. It comes with a large number of functions, plugins, themes, so you can beautify your Terminal and save time when writing commands.
The information displayed in the command prompt can be modified by the user; this looks like the command prompt on Ubuntu: name @ example: ~ $
name: current username
example: hostname server
"~": the current directory in which we are located. In bash, which is by default shell, tilde or "~", it is a special character that actually represents the path of the "home" directory, in this case, it represents "/ home/name"
"$": prompt symbol, this marks the end of the command prompt, followed by the input of the user's keyboard
uptime -> displays the time since the last boot time
whoami -> shows who you are
uname -> displays system information
whereis -> finds the location of the file that is running for the given program
screenfetch -> displays information about hardware and software (installation required)
top -> shows processes
free -> displays memory usage
history -> displays all commands that are written by the user in the past
date -> displays the time and date
calendar -> displays calendar (holidays etc.)
curl -> captures html code from the website and displays its content in the terminal
curl wttr.in/serbiapwd -> displays the directory in which we are currently located and its path
cd -> command to change the directory
mv -> move or rename a file / directory
cp -> copy the file / directory
ls -> list files / directories
mkdir -> command to create a new directory
rmdir -> command to remove the directory
rm -> command to remove files
rm -i -> command to remove files, it is necessary to confirm more once you want to remove the file
rm -rf -> removes the folder although it is not empty
touch -> is used to create a new text file
nano / emac / vim -> editors available in the OS
cat -> list the contents of the file in the terminal
clear -> removes everything that is written in the terminal (clear text from the terminal)
sudo -> super user do
are -> root user
sudo dpkg -i example.deb -> install .deb files
sudo dpkg -r example.deb -> uninstall
sudo dpkg -P example.deb -> uninstall and removing config files
sudo apt-get update && sudo apt-get upgrade -> update packages and upgrade
sudo apt-cache show packagename -> displays packages (repositories)
sudo apt-cache search something -> search programs and so on in packages
find. -type f -name "* .sass" -> to search everything in
system / project / folder (f - is for files) find. -type d -empty -> searches for empty folders (d - is for directories, folders)
sudo ufw enable / disable -> firewall enabling / disabling
chmod g + w somefile.txt or chmod u + r somefile.txt -> change (permission) of the authorization u-user g-group o-others w (4) r (2) x (1)
chmod 642 -> the first number belongs to the user, the other belongs to the group, and the third one belongs to others
wget -> download (downloads) files or pages via URL
At Quantox, our programmers, System Administrators and DevOps know how powerful Terminal can be. It is what allows them to build high-performing applications and software for our clients. Do you need a programmer that knows your app inside-out? Let's Talk!
The educational system in our country is such that it doesn't allow continuous personal development, but imposes the creation of a community in which everyone is similarly thinking, have similar requirements and needs. Because of this, as well as for stable thinking, students go through the paths that are pulled and safe. Getting a passing grade, completing a college without having the knowledge needed for further development, has led to a large percentage of people with diplomas that are not useful to society, their future career, or themselves.
For this reason, it is necessary to reorient your aspirations and advocacy in time and devote all your time to improvement and intellectual development.Careers in IT are increasingly expanding, so a large number of young people opt for this type of business. The profession is extremely diverse because it can specialize in various areas such as software development, server administrators, network architectures, and many others. Many employers are looking for professionals who possess IT skills along with other skills.Students must take responsibility for developing their careers and look for opportunities where they can learn new skills that put them above average candidates. Therefore, it is important to seriously understand their IT courses because they play a major role in their future career. Here are some guidelines you can follow as students while you are at college to secure your IT career.
1) Invest in to acquire specialization in the area that suits you most, but which is in high demand.Explore what jobs are rising in 2018. IT is a huge area and demand for IT career is diverse and growing. It is therefore wise to consider which specialization best suits you. Synchronize your opportunities with the business that attracts you, and then find practical learning opportunities by having as many informative conversations with experts in your area as possible.2) Never stop learningKeep up to date with the latest industry events. Once you've determined your choice, the next thing you need to do is expand your knowledge, visit new courses and meetups. IT industry is always growing and progressing fast, so if you are a good candidate, you need to keep up with the latest technological trends (machine learning, smart stuff, blockchains, network applications).Try to learn new encoding techniques, new frameworks.3) Create your own applicationCreate a portfolio where you will add your projects and achievements. Create a mini-application that will sharpen your skills and which will also expand your experience. This will leave a great impression on the job seekers. And at the same time, this project can later be a source of income.4) Go to courses to gain writing skillsMost of the communication in the professional world is in a written version. Also, a large percentage of clients with whom IT industry is co-operating beyond the boundaries of our country, so knowledge of English is the basic. Improving writing and speaking are key things to be a part of the IT world.5) Find yourself a mentorThe mentor is someone who will help you to choose the right career path and who will help you to conduct interviews for the job. He will see what areas you need to improve and will stimulate you to turn your weaknesses into the virtue. A good mentor will try to stimulate your personal and professional growth. It will set the goal you need to achieve and will point you to the mistakes you make to that goal. At the same time, he can connect you with other people who will be ready to invest in you.6) Visit online coursesThere are many online courses and tutorials that are free and that can help you raise your knowledge to an enviable level. Being determined and persistent can help in training for every job. An important feature of online courses is a good distribution. They are most often divided by weeks, and each week's readings to smaller parts consist of video texts, recordings, and tests to test the learned.
To round up. Being a developer is not easy, it carries with it a lot of renunciation, but also a lot of satisfaction. If that's what you really want to do and what you want to achieve, then be prepared for a lot of unexpected problems, coding, stress and responsibility, disciplinary and exercise. Be sure that you gonna switch from project to project and from one technology to another. But also that you will become part of a team that will represent another family for you, a team who shares your attitude and thinking and who is always there to support you and solve unsolvable :)